Merge remote-tracking branch 'Upstream/develop' into develop-adherent
This commit is contained in:
commit
ca82c2f36d
@ -42,28 +42,19 @@ Please don't edit the ChangeLog file. A project manager will update it from your
|
||||
Use clear commit messages with the following structure:
|
||||
|
||||
<pre>
|
||||
KEYWORD Short description (may be the bug number #456)
|
||||
FIX|Fix #456 Short description (where #456 is number of bug fix, if it exists. In upper case to appear into ChangeLog)
|
||||
or
|
||||
CLOSE|Close #456 Short description (where #456 is number feature request, if it exists. In upper case to appear into ChangeLog)
|
||||
or
|
||||
NEW|New Short description (In upper case to appear into ChangeLog)
|
||||
or
|
||||
Short description (when the commit is not introducing feature or closing a bug)
|
||||
|
||||
Long description (Can span accross multiple lines).
|
||||
</pre>
|
||||
|
||||
Where KEYWORD is one of:
|
||||
|
||||
- "Fixed" for bug fixes (May be followed by the bug number i.e: #456)
|
||||
- "Closed" for a commit to close a feature request issue (May be followed by the bug number i.e: #456)
|
||||
- void, don't put a keyword if the commit is not introducing feature or closing a bug.
|
||||
|
||||
### Pull Requests
|
||||
When submitting a pull request, use following syntax:
|
||||
|
||||
<pre>
|
||||
KEYWORD Short description (may be the bug number #456)
|
||||
</pre>
|
||||
|
||||
Where KEYWORD is one of:
|
||||
|
||||
- "FIXED" or "Fixed" for bug fixes. In upper case to appear into ChangeLog. (May be followed by the bug number i.e: #456)
|
||||
- "NEW" or "New" for new features. In upper case to appear into ChangeLog. (May be followed by the task number i.e: #123)
|
||||
When submitting a pull request, use same rule than Commits. With upper case keyword to appear into ChangeLog.
|
||||
|
||||
|
||||
### Resources
|
||||
|
||||
@ -164,8 +164,6 @@
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
|
||||
<rule ref="Generic.VersionControl.SubversionProperties" />
|
||||
|
||||
<!-- Disallow usage of tab -->
|
||||
<!-- <rule ref="Generic.WhiteSpace.DisallowTabIndent" /> -->
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file htdocs/dev/generate-commande.php
|
||||
* \file dev/initdata/generate-commande.php
|
||||
* \brief Script de generation de donnees aleatoires pour les commandes
|
||||
*/
|
||||
|
||||
|
||||
@ -19,7 +19,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file htdocs/dev/generate-facture.php
|
||||
* \file dev/intdata/generate-facture.php
|
||||
* \brief Script de generation de donnees aleatoires pour les factures
|
||||
*/
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file htdocs/dev/generate-produit.php
|
||||
* \file dev/initdata/generate-produit.php
|
||||
* \brief Script de generation de donnees aleatoires pour les produits
|
||||
*/
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file htdocs/dev/generate-propale.php
|
||||
* \file dev/initdata/generate-propale.php
|
||||
* \brief Script de generation de donnees aleatoires pour les propales
|
||||
*/
|
||||
|
||||
|
||||
@ -20,8 +20,8 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file htdocs/dev/generate-societe.php
|
||||
* \brief Script de generation de donnees aleatoires pour les societes
|
||||
* \file dev/initdata/generate-societe.php
|
||||
* \brief Script de generation de donnees aleatoires pour les societes
|
||||
*/
|
||||
|
||||
// Test si mode batch
|
||||
@ -89,7 +89,7 @@ for ($s = 0 ; $s < GEN_NUMBER_SOCIETE ; $s++)
|
||||
{
|
||||
print "Company $s\n";
|
||||
$soc = new Societe($db);
|
||||
$soc->nom = "Company num ".time()."$s";
|
||||
$soc->name = "Company num ".time()."$s";
|
||||
$soc->town = $listoftown[rand(0, count($listoftown)-1)];
|
||||
$soc->client = rand(1,2); // Une societe sur 2 est prospect, l'autre client
|
||||
$soc->fournisseur = rand(0,1); // Une societe sur 2 est fournisseur
|
||||
@ -101,7 +101,7 @@ for ($s = 0 ; $s < GEN_NUMBER_SOCIETE ; $s++)
|
||||
// Un client sur 3 a une remise de 5%
|
||||
$user_remise=rand(1,3); if ($user_remise==3) $soc->remise_percent=5;
|
||||
print "> client=".$soc->client.", fournisseur=".$soc->fournisseur.", remise=".$soc->remise_percent."\n";
|
||||
$soc->note='Company created by the script generate-societe.php';
|
||||
$soc->note_private = 'Company created by the script generate-societe.php';
|
||||
$socid = $soc->create();
|
||||
|
||||
if ($socid >= 0)
|
||||
@ -120,7 +120,7 @@ for ($s = 0 ; $s < GEN_NUMBER_SOCIETE ; $s++)
|
||||
}
|
||||
}
|
||||
|
||||
print "Company ".$s." created nom=".$soc->nom."\n";
|
||||
print "Company ".$s." created nom=".$soc->name."\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -7427,7 +7427,7 @@ CREATE TABLE `llx_user` (
|
||||
|
||||
LOCK TABLES `llx_user` WRITE;
|
||||
/*!40000 ALTER TABLE `llx_user` DISABLE KEYS */;
|
||||
INSERT INTO `llx_user` VALUES (1,'2010-07-08 13:20:11','2012-12-12 16:54:10',NULL,NULL,'admin',0,NULL,NULL,NULL,'admin','21232f297a57a5a743894a0e4a801fc3',NULL,'SuperAdminName','Firstname','',NULL,'','','','bidon@destailleur.fr','',1,'','','',1,1,NULL,NULL,NULL,'','2014-12-21 20:52:09','2014-12-21 13:51:38',NULL,'',1,'01.jpg',NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(2,'2010-07-08 13:54:48','2010-07-08 09:54:48',NULL,NULL,'demo',1,NULL,NULL,NULL,'demo','fe01ce2a7fbac8fafaed7c982a04e229',NULL,'John','Doe',NULL,NULL,'09123123','','','johndoe@mycompany.com',NULL,0,'','','',1,1,NULL,NULL,NULL,'','2013-03-24 16:30:29','2010-07-08 14:12:02',NULL,'',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(3,'2010-07-11 16:18:59','2013-02-20 18:07:21',NULL,NULL,'adupont',1,NULL,NULL,NULL,'adupont','00856ab2bbb748aa29aa335a6e3a2407',NULL,'Dupont','Alain','',NULL,'','','','toto@aa.com','',0,'','','',1,1,NULL,NULL,2,'','2012-12-21 17:38:55',NULL,NULL,'',1,NULL,NULL,NULL,2,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(4,'2013-01-23 17:52:27','2013-02-20 18:48:01',NULL,NULL,'aaa',1,NULL,NULL,NULL,'aaa','47bce5c74f589f4867dbd57e9ca9f808',NULL,'aaa','','',NULL,'','','','','',0,'','','',1,1,17,6,NULL,'','2013-02-25 10:18:41','2013-01-23 17:53:20',NULL,'',1,NULL,NULL,NULL,5,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(5,'2013-01-23 17:52:37','2013-01-23 15:52:37',NULL,NULL,'bbb',0,NULL,NULL,NULL,'bbb','08f8e0260c64418510cefb2b06eee5cd',NULL,'bbb','','',NULL,'','','','','',1,'','','',1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(6,'2013-02-16 20:22:40','2013-02-16 18:22:40',NULL,NULL,'aaab',2,NULL,NULL,NULL,'aaab','4c189b020ceb022e0ecc42482802e2b8',NULL,'aaab','','',NULL,'','','','','',0,'','','',1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(7,'2013-02-16 20:48:15','2013-02-16 18:48:15',NULL,NULL,'zzz',2,NULL,NULL,NULL,'zzz','f3abb86bd34cf4d52698f14c0da1dc60',NULL,'zzz','','',NULL,'','','','','',0,'','','',1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(9,'2013-02-16 20:50:07','2013-03-24 15:10:14',NULL,NULL,'zzzg',2,NULL,NULL,NULL,'jc28fg4h','93d789524fd223cf05eecea3f59cbe86',NULL,'zzzg','','',NULL,'','','','','fsdkkfsdf<br />\r\nfsdfsd<br />\r\n<strong>fsdfs</strong>',0,'','','',1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,5,NULL,'','','',NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL);
|
||||
INSERT INTO `llx_user` VALUES (1,'2010-07-08 13:20:11','2012-12-12 16:54:10',NULL,NULL,'admin',0,NULL,NULL,NULL,'admin','21232f297a57a5a743894a0e4a801fc3',NULL,'SuperAdminName','Firstname','',NULL,'','','','bidon@destailleur.fr','',1,'','','',1,1,NULL,NULL,NULL,'','2014-12-21 20:52:09','2014-12-21 13:51:38',NULL,'',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(2,'2010-07-08 13:54:48','2010-07-08 09:54:48',NULL,NULL,'demo',1,NULL,NULL,NULL,'demo','fe01ce2a7fbac8fafaed7c982a04e229',NULL,'John','Doe',NULL,NULL,'09123123','','','johndoe@mycompany.com',NULL,0,'','','',1,1,NULL,NULL,NULL,'','2013-03-24 16:30:29','2010-07-08 14:12:02',NULL,'',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(3,'2010-07-11 16:18:59','2013-02-20 18:07:21',NULL,NULL,'adupont',1,NULL,NULL,NULL,'adupont','00856ab2bbb748aa29aa335a6e3a2407',NULL,'Dupont','Alain','',NULL,'','','','toto@aa.com','',0,'','','',1,1,NULL,NULL,2,'','2012-12-21 17:38:55',NULL,NULL,'',1,NULL,NULL,NULL,2,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(4,'2013-01-23 17:52:27','2013-02-20 18:48:01',NULL,NULL,'aaa',1,NULL,NULL,NULL,'aaa','47bce5c74f589f4867dbd57e9ca9f808',NULL,'aaa','','',NULL,'','','','','',0,'','','',1,1,17,6,NULL,'','2013-02-25 10:18:41','2013-01-23 17:53:20',NULL,'',1,NULL,NULL,NULL,5,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(5,'2013-01-23 17:52:37','2013-01-23 15:52:37',NULL,NULL,'bbb',0,NULL,NULL,NULL,'bbb','08f8e0260c64418510cefb2b06eee5cd',NULL,'bbb','','',NULL,'','','','','',1,'','','',1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(6,'2013-02-16 20:22:40','2013-02-16 18:22:40',NULL,NULL,'aaab',2,NULL,NULL,NULL,'aaab','4c189b020ceb022e0ecc42482802e2b8',NULL,'aaab','','',NULL,'','','','','',0,'','','',1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(7,'2013-02-16 20:48:15','2013-02-16 18:48:15',NULL,NULL,'zzz',2,NULL,NULL,NULL,'zzz','f3abb86bd34cf4d52698f14c0da1dc60',NULL,'zzz','','',NULL,'','','','','',0,'','','',1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL),(9,'2013-02-16 20:50:07','2013-03-24 15:10:14',NULL,NULL,'zzzg',2,NULL,NULL,NULL,'jc28fg4h','93d789524fd223cf05eecea3f59cbe86',NULL,'zzzg','','',NULL,'','','','','fsdkkfsdf<br />\r\nfsdfsd<br />\r\n<strong>fsdfs</strong>',0,'','','',1,1,NULL,NULL,NULL,'',NULL,NULL,NULL,'',1,NULL,NULL,NULL,5,NULL,'','','',NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL);
|
||||
/*!40000 ALTER TABLE `llx_user` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
|
||||
@ -26,7 +26,6 @@ fi
|
||||
|
||||
if [ "x$1" = "xall" ]
|
||||
then
|
||||
cd htdocs/lang
|
||||
for dir in `find htdocs/langs/* -type d`
|
||||
do
|
||||
fic=`basename $dir`
|
||||
|
||||
@ -323,8 +323,6 @@ else // Show
|
||||
$var=true;
|
||||
|
||||
// Language
|
||||
print_fiche_titre($langs->trans("Language"),'','');
|
||||
print '<br>';
|
||||
print '<table class="noborder" width="100%">';
|
||||
print '<tr class="liste_titre"><td>'.$langs->trans("Parameters").'</td><td>'.$langs->trans("Value").'</td><td> </td></tr>';
|
||||
|
||||
|
||||
@ -185,7 +185,7 @@ else if ($action == 'set_SUPPLIER_ORDER_OTHER')
|
||||
// TODO We add/delete permission until permission can have a condition on a global var
|
||||
$r_id = 1190;
|
||||
$entity = $conf->entity;
|
||||
$r_desc='Permission for second approval';
|
||||
$r_desc=$langs->trans("Permission1190");
|
||||
$r_modul='fournisseur';
|
||||
$r_type='w';
|
||||
$r_perms='commande';
|
||||
|
||||
@ -111,11 +111,6 @@ jQuery(document).ready(function() {
|
||||
print_fiche_titre($langs->trans("Backup"),'','setup');
|
||||
|
||||
print $langs->trans("BackupDesc",DOL_DATA_ROOT).'<br><br>';
|
||||
print $langs->trans("BackupDesc2",DOL_DATA_ROOT).'<br>';
|
||||
print $langs->trans("BackupDescX").'<br><br>';
|
||||
print $langs->trans("BackupDesc3",DOL_DATA_ROOT).'<br>';
|
||||
print $langs->trans("BackupDescY").'<br><br>';
|
||||
|
||||
|
||||
?>
|
||||
|
||||
@ -124,9 +119,29 @@ print $langs->trans("BackupDescY").'<br><br>';
|
||||
name="token" value="<?php echo $_SESSION['newtoken']; ?>" /> <input
|
||||
type="hidden" name="export_type" value="server" />
|
||||
|
||||
<fieldset id="fieldsetexport">
|
||||
<?php print '<legend>'.$langs->trans("DatabaseName").' : <b>'.$dolibarr_main_db_name.'</b></legend>'; ?>
|
||||
<table>
|
||||
<fieldset id="fieldsetexport"><legend style="font-size: 3em">1</legend>
|
||||
|
||||
<?php
|
||||
print $langs->trans("BackupDesc3",$dolibarr_main_db_name).'<br>';
|
||||
//print $langs->trans("BackupDescY").'<br>';
|
||||
print '<br>';
|
||||
?>
|
||||
|
||||
<div id="backupdatabaseleft" class="fichehalfleft" >
|
||||
|
||||
<?php
|
||||
|
||||
print_titre($title?$title:$langs->trans("BackupDumpWizard"));
|
||||
|
||||
print '<table width="100%" class="'.($useinecm?'nobordernopadding':'liste').'">';
|
||||
print '<tr class="liste_titre">';
|
||||
print '<td class="liste_titre">';
|
||||
print $langs->trans("DatabaseName").' : <b>'.$dolibarr_main_db_name.'</b><br>';
|
||||
print '</td>';
|
||||
print '</tr>';
|
||||
print '<tr '.$bc[false].'><td style="padding-left: 8px">';
|
||||
?>
|
||||
<table class="centpercent">
|
||||
<tr>
|
||||
<td valign="top">
|
||||
|
||||
@ -182,7 +197,7 @@ print $langs->trans("BackupDescY").'<br><br>';
|
||||
$fullpathofmysqldump=$conf->global->SYSTEMTOOLS_MYSQLDUMP;
|
||||
}
|
||||
?><br>
|
||||
<input type="text" name="mysqldump" size="80"
|
||||
<input type="text" name="mysqldump" style="width: 80%"
|
||||
value="<?php echo $fullpathofmysqldump; ?>" /></div>
|
||||
|
||||
<br>
|
||||
@ -317,7 +332,7 @@ print $langs->trans("BackupDescY").'<br><br>';
|
||||
$fullpathofpgdump=$conf->global->SYSTEMTOOLS_POSTGRESQLDUMP;
|
||||
}
|
||||
?><br>
|
||||
<input type="text" name="postgresqldump" size="80"
|
||||
<input type="text" name="postgresqldump" style="width: 80%"
|
||||
value="<?php echo $fullpathofpgdump; ?>" /></div>
|
||||
|
||||
|
||||
@ -357,12 +372,12 @@ print $langs->trans("BackupDescY").'<br><br>';
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend><?php echo $langs->trans("Destination"); ?></legend>
|
||||
<label for="filename_template"> <?php echo $langs->trans("FileNameToGenerate"); ?></label>:
|
||||
<input type="text" name="filename_template" size="60"
|
||||
<!--<fieldset>
|
||||
<legend><?php echo $langs->trans("Destination"); ?></legend> -->
|
||||
<br>
|
||||
<label for="filename_template"> <?php echo $langs->trans("FileNameToGenerate"); ?></label><br>
|
||||
<input type="text" name="filename_template" style="width: 90%"
|
||||
id="filename_template"
|
||||
value="<?php
|
||||
$prefix='dump';
|
||||
@ -417,7 +432,8 @@ foreach($compression as $key => $val)
|
||||
print '</div>';
|
||||
print "\n";
|
||||
|
||||
?></fieldset>
|
||||
?><!--</fieldset>--> <!-- End destination -->
|
||||
|
||||
|
||||
<br>
|
||||
<div align="center"><input type="submit" class="button"
|
||||
@ -425,15 +441,38 @@ print "\n";
|
||||
<br>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
print '</td></tr></table>';
|
||||
?>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
<div id="backupdatabaseright" class="fichehalfright" style="height:400px; overflow: auto;">
|
||||
<div class="ficheaddleft">
|
||||
|
||||
<?php
|
||||
|
||||
$filearray=dol_dir_list($conf->admin->dir_output.'/backup','files',0,'','',$sortfield,(strtolower($sortorder)=='asc'?SORT_ASC:SORT_DESC),1);
|
||||
$result=$formfile->list_of_documents($filearray,null,'systemtools','',1,'backup/',1,0,$langs->trans("NoBackupFileAvailable"),0,$langs->trans("PreviousDumpFiles"));
|
||||
print '<br>';
|
||||
?>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<br>
|
||||
|
||||
<fieldset><legend style="font-size: 3em">2</legend>
|
||||
<?php
|
||||
print $langs->trans("BackupDesc2",DOL_DATA_ROOT).'<br>';
|
||||
print $langs->trans("BackupDescX").'<br><br>';
|
||||
?>
|
||||
</fieldset>
|
||||
|
||||
|
||||
|
||||
</form>
|
||||
<?php
|
||||
|
||||
llxFooter();
|
||||
|
||||
|
||||
@ -66,13 +66,24 @@ jQuery(document).ready(function() {
|
||||
print_fiche_titre($langs->trans("Restore"),'','setup');
|
||||
|
||||
print $langs->trans("RestoreDesc",DOL_DATA_ROOT).'<br><br>';
|
||||
?>
|
||||
<fieldset>
|
||||
<legend style="font-size: 3em">1</legend>
|
||||
<?php
|
||||
print $langs->trans("RestoreDesc2",DOL_DATA_ROOT).'<br><br>';
|
||||
print $langs->trans("RestoreDesc3",DOL_DATA_ROOT).'<br><br>';
|
||||
?>
|
||||
</fieldset>
|
||||
|
||||
<br>
|
||||
|
||||
<fieldset>
|
||||
<legend style="font-size: 3em">2</legend>
|
||||
<?php
|
||||
print $langs->trans("RestoreDesc3",$dolibarr_main_db_name).'<br><br>';
|
||||
?>
|
||||
|
||||
<fieldset id="fieldsetexport">
|
||||
<?php print '<legend>'.$langs->trans("DatabaseName").' : <b>'.$dolibarr_main_db_name.'</b></legend>'; ?>
|
||||
<?php print $langs->trans("DatabaseName").' : <b>'.$dolibarr_main_db_name.'</b>'; ?><br><br>
|
||||
|
||||
<table><tr><td valign="top">
|
||||
|
||||
<?php if ($conf->use_javascript_ajax) { ?>
|
||||
|
||||
@ -88,10 +88,10 @@ if (!empty($MemoryLimit))
|
||||
$form=new Form($db);
|
||||
$formfile = new FormFile($db);
|
||||
|
||||
$help_url='EN:Backups|FR:Sauvegardes|ES:Copias_de_seguridad';
|
||||
llxHeader('','',$help_url);
|
||||
//$help_url='EN:Backups|FR:Sauvegardes|ES:Copias_de_seguridad';
|
||||
//llxHeader('','',$help_url);
|
||||
|
||||
print_fiche_titre($langs->trans("Backup"),'','setup');
|
||||
//print_fiche_titre($langs->trans("Backup"),'','setup');
|
||||
|
||||
|
||||
// Start with empty buffer
|
||||
@ -165,13 +165,18 @@ if ($what == 'mysql')
|
||||
$paramclear.=' -p"'.str_replace(array('"','`'),array('\"','\`'),$dolibarr_main_db_pass).'"';
|
||||
}
|
||||
|
||||
$_SESSION["commandbackuplastdone"]=$command." ".$paramcrypted;
|
||||
$_SESSION["commandbackuptorun"]="";
|
||||
/*
|
||||
print '<b>'.$langs->trans("RunCommandSummary").':</b><br>'."\n";
|
||||
print '<textarea rows="'.ROWS_2.'" cols="120">'.$command." ".$paramcrypted.'</textarea><br>'."\n";
|
||||
print '<br>';
|
||||
|
||||
//print $paramclear;
|
||||
|
||||
// Now run command and show result
|
||||
print '<b>'.$langs->trans("BackupResult").':</b> ';
|
||||
*/
|
||||
|
||||
$errormsg='';
|
||||
|
||||
@ -264,6 +269,9 @@ if ($what == 'mysqlnobin')
|
||||
{
|
||||
backup_tables($outputfile);
|
||||
}
|
||||
|
||||
$_SESSION["commandbackuplastdone"]="";
|
||||
$_SESSION["commandbackuptorun"]="";
|
||||
}
|
||||
|
||||
// POSTGRESQL
|
||||
@ -320,7 +328,9 @@ if ($what == 'postgresql')
|
||||
$paramcrypted.=" -w ".$dolibarr_main_db_name;
|
||||
$paramclear.=" -w ".$dolibarr_main_db_name;
|
||||
|
||||
print $langs->trans("RunCommandSummaryToLaunch").':<br>'."\n";
|
||||
$_SESSION["commandbackuplastdone"]="";
|
||||
$_SESSION["commandbackuptorun"]=$command." ".$paramcrypted;
|
||||
/*print $langs->trans("RunCommandSummaryToLaunch").':<br>'."\n";
|
||||
print '<textarea rows="'.ROWS_3.'" cols="120">'.$command." ".$paramcrypted.'</textarea><br>'."\n";
|
||||
|
||||
print '<br>';
|
||||
@ -330,7 +340,7 @@ if ($what == 'postgresql')
|
||||
print $langs->trans("YouMustRunCommandFromCommandLineAfterLoginToUser",$dolibarr_main_db_user,$dolibarr_main_db_user);
|
||||
|
||||
print '<br>';
|
||||
print '<br>';
|
||||
print '<br>';*/
|
||||
|
||||
$what='';
|
||||
}
|
||||
@ -339,34 +349,46 @@ if ($what == 'postgresql')
|
||||
|
||||
|
||||
// Si on a demande une generation
|
||||
if ($what)
|
||||
{
|
||||
//if ($what)
|
||||
//{
|
||||
if ($errormsg)
|
||||
{
|
||||
setEventMessage($langs->trans("Error")." : ".$errormsg, 'errors');
|
||||
/*
|
||||
print '<div class="error">'.$langs->trans("Error")." : ".$errormsg.'</div>';
|
||||
// print '<a href="'.DOL_URL_ROOT.$relativepatherr.'">'.$langs->trans("DownloadErrorFile").'</a><br>';
|
||||
print '<br>';
|
||||
print '<br>';
|
||||
print '<br>';*/
|
||||
}
|
||||
else
|
||||
{
|
||||
print '<div class="ok">';
|
||||
print $langs->trans("BackupFileSuccessfullyCreated").'.<br>';
|
||||
print $langs->trans("YouCanDownloadBackupFile");
|
||||
print '</div>';
|
||||
print '<br>';
|
||||
{
|
||||
if ($what)
|
||||
{
|
||||
setEventMessage($langs->trans("BackupFileSuccessfullyCreated").'.<br>'.$langs->trans("YouCanDownloadBackupFile"));
|
||||
/*print '<div class="ok">';
|
||||
print $langs->trans("BackupFileSuccessfullyCreated").'.<br>';
|
||||
print $langs->trans("YouCanDownloadBackupFile");
|
||||
print '</div>';
|
||||
print '<br>';*/
|
||||
}
|
||||
else
|
||||
{
|
||||
setEventMessage($langs->trans("YouMustRunCommandFromCommandLineAfterLoginToUser",$dolibarr_main_db_user,$dolibarr_main_db_user));
|
||||
}
|
||||
}
|
||||
}
|
||||
//}
|
||||
|
||||
/*
|
||||
$filearray=dol_dir_list($conf->admin->dir_output.'/backup','files',0,'','',$sortfield,(strtolower($sortorder)=='asc'?SORT_ASC:SORT_DESC),1);
|
||||
$result=$formfile->list_of_documents($filearray,null,'systemtools','',1,'backup/',1,0,($langs->trans("NoBackupFileAvailable").'<br>'.$langs->trans("ToBuildBackupFileClickHere",DOL_URL_ROOT.'/admin/tools/dolibarr_export.php')),0,$langs->trans("PreviousDumpFiles"));
|
||||
|
||||
print '<br>';
|
||||
*/
|
||||
|
||||
// Redirect t backup page
|
||||
header("Location: dolibarr_export.php");
|
||||
|
||||
$time_end = time();
|
||||
|
||||
llxFooter();
|
||||
|
||||
$db->close();
|
||||
|
||||
|
||||
|
||||
@ -29,6 +29,8 @@ include_once DOL_DOCUMENT_ROOT . '/core/lib/geturl.lib.php';
|
||||
$langs->load("admin");
|
||||
$langs->load("other");
|
||||
|
||||
$action=GETPOST('action','alpha');
|
||||
|
||||
if (! $user->admin) accessforbidden();
|
||||
|
||||
if (GETPOST('msg','alpha')) {
|
||||
@ -43,14 +45,18 @@ $dolibarrroot=preg_replace('/([\\/]+)$/i','',DOL_DOCUMENT_ROOT);
|
||||
$dolibarrroot=preg_replace('/([^\\/]+)$/i','',$dolibarrroot);
|
||||
$dolibarrdataroot=preg_replace('/([\\/]+)$/i','',DOL_DATA_ROOT);
|
||||
|
||||
$dirins=DOL_DOCUMENT_ROOT.'/custom';
|
||||
|
||||
|
||||
/*
|
||||
* Actions
|
||||
*/
|
||||
|
||||
if (GETPOST('action','alpha')=='install')
|
||||
if ($action=='install')
|
||||
{
|
||||
$error=0;
|
||||
|
||||
// $original_file should match format module_modulename-x.y[.z].zip
|
||||
$original_file=basename($_FILES["fileinstall"]["name"]);
|
||||
$newfile=$conf->admin->dir_temp.'/'.$original_file.'/'.$original_file;
|
||||
|
||||
@ -72,33 +78,87 @@ if (GETPOST('action','alpha')=='install')
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
@dol_delete_dir_recursive($conf->admin->dir_temp.'/'.$original_file);
|
||||
dol_mkdir($conf->admin->dir_temp.'/'.$original_file);
|
||||
if ($original_file)
|
||||
{
|
||||
@dol_delete_dir_recursive($conf->admin->dir_temp.'/'.$original_file);
|
||||
dol_mkdir($conf->admin->dir_temp.'/'.$original_file);
|
||||
}
|
||||
|
||||
$tmpdir=preg_replace('/\.zip$/','',$original_file).'.dir';
|
||||
if ($tmpdir)
|
||||
{
|
||||
@dol_delete_dir_recursive($conf->admin->dir_temp.'/'.$tmpdir);
|
||||
dol_mkdir($conf->admin->dir_temp.'/'.$tmpdir);
|
||||
}
|
||||
|
||||
$result=dol_move_uploaded_file($_FILES['fileinstall']['tmp_name'],$newfile,1,0,$_FILES['fileinstall']['error']);
|
||||
if ($result > 0)
|
||||
{
|
||||
$documentrootalt=DOL_DOCUMENT_ROOT.'/extensions';
|
||||
$result=dol_uncompress($newfile,$documentrootalt);
|
||||
$result=dol_uncompress($newfile,$conf->admin->dir_temp.'/'.$tmpdir);
|
||||
|
||||
if (! empty($result['error']))
|
||||
{
|
||||
$langs->load("errors");
|
||||
setEventMessage($langs->trans($result['error'],$original_file), 'errors');
|
||||
$error++;
|
||||
}
|
||||
else
|
||||
{
|
||||
setEventMessage($langs->trans("SetupIsReadyForUse"));
|
||||
// Now we move the dir of the module
|
||||
$modulename=preg_replace('/module_/', '', $original_file);
|
||||
$modulename=preg_replace('/\-[\d]+\.[\d]+.*$/', '', $modulename);
|
||||
// Search dir $modulename
|
||||
$modulenamedir=$conf->admin->dir_temp.'/'.$tmpdir.'/'.$modulename;
|
||||
//var_dump($modulenamedir);
|
||||
if (! dol_is_dir($modulenamedir))
|
||||
{
|
||||
$modulenamedir=$conf->admin->dir_temp.'/'.$tmpdir.'/htdocs/'.$modulename;
|
||||
//var_dump($modulenamedir);
|
||||
if (! dol_is_dir($modulenamedir))
|
||||
{
|
||||
setEventMessage($langs->trans("ErrorModuleFileSeemsToHaveAWrongFormat"), 'errors');
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
//var_dump($dirins);
|
||||
@dol_delete_dir_recursive($dirins.'/'.$modulename);
|
||||
$result=dolCopyDir($modulenamedir, $dirins.'/'.$modulename, '0444', 1);
|
||||
if ($result <= 0)
|
||||
{
|
||||
setEventMessage($langs->trans("ErrorFailedToCopy"), 'errors');
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
setEventMessage($langs->trans("SetupIsReadyForUse"));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* View
|
||||
*/
|
||||
|
||||
$dirins=DOL_DOCUMENT_ROOT.'/extensions';
|
||||
$dirins_ok=(is_dir($dirins));
|
||||
|
||||
|
||||
// Set dir where external modules are installed
|
||||
if (! dol_is_dir($dirins))
|
||||
{
|
||||
dol_mkdir($dirins);
|
||||
}
|
||||
$dirins_ok=(dol_is_dir($dirins));
|
||||
|
||||
$wikihelp='EN:Installation_-_Upgrade|FR:Installation_-_Mise_à_jour|ES:Instalación_-_Actualización';
|
||||
llxHeader('',$langs->trans("Upgrade"),$wikihelp);
|
||||
@ -143,6 +203,8 @@ else
|
||||
}
|
||||
print '<br>';
|
||||
|
||||
|
||||
// Upgrade
|
||||
print $langs->trans("Upgrade").'<br>';
|
||||
print '<hr>';
|
||||
print $langs->trans("ThisIsProcessToFollow").'<br>';
|
||||
@ -162,20 +224,76 @@ print $langs->trans("RestoreLock",$dolibarrdataroot.'/install.lock').'<br>';
|
||||
print '<br>';
|
||||
print '<br>';
|
||||
|
||||
|
||||
// Install external module
|
||||
|
||||
$allowonlineinstall=true;
|
||||
$allowfromweb=1;
|
||||
if (dol_is_file($dolibarrdataroot.'/installmodules.lock')) $allowonlineinstall=false;
|
||||
|
||||
$fullurl='<a href="'.$urldolibarrmodules.'" target="_blank">'.$urldolibarrmodules.'</a>';
|
||||
$message='';
|
||||
if (! empty($allowonlineinstall))
|
||||
{
|
||||
if (! in_array('/custom',explode(',',$dolibarr_main_url_root_alt)))
|
||||
{
|
||||
$message=info_admin($langs->trans("ConfFileMuseContainCustom", DOL_DOCUMENT_ROOT.'/custom', DOL_DOCUMENT_ROOT));
|
||||
$allowfromweb=-1;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($dirins_ok)
|
||||
{
|
||||
if (! is_writable(dol_osencode($dirins)))
|
||||
{
|
||||
$langs->load("errors");
|
||||
$message=info_admin($langs->trans("ErrorFailedToWriteInDir",$dirins));
|
||||
$allowfromweb=0;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
$message=info_admin($langs->trans("NotExistsDirect",$dirins).$langs->trans("InfDirAlt").$langs->trans("InfDirExample"));
|
||||
$allowfromweb=0;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$message=info_admin($langs->trans("InstallModuleFromWebHasBeenDisabledByFile",$dolibarrdataroot.'/installmodules.lock'));
|
||||
$allowfromweb=0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
print $langs->trans("AddExtensionThemeModuleOrOther").'<br>';
|
||||
print '<hr>';
|
||||
print $langs->trans("ThisIsProcessToFollow").'<br>';
|
||||
print '<b>'.$langs->trans("StepNb",1).'</b>: ';
|
||||
print $langs->trans("FindPackageFromWebSite",$fullurl).'<br>';
|
||||
print '<b>'.$langs->trans("StepNb",2).'</b>: ';
|
||||
print $langs->trans("DownloadPackageFromWebSite",$fullurl).'<br>';
|
||||
print '<b>'.$langs->trans("StepNb",3).'</b>: ';
|
||||
print $langs->trans("UnpackPackageInDolibarrRoot",$dolibarrroot).'<br>';
|
||||
if (! empty($conf->global->MAIN_ONLINE_INSTALL_MODULE))
|
||||
|
||||
if ($allowfromweb < 1)
|
||||
{
|
||||
if ($dirins_ok)
|
||||
print $langs->trans("SomethingMakeInstallFromWebNotPossible");
|
||||
print $message;
|
||||
//print $langs->trans("SomethingMakeInstallFromWebNotPossible2");
|
||||
print '<br>';
|
||||
}
|
||||
|
||||
|
||||
if ($allowfromweb >= 0)
|
||||
{
|
||||
if ($allowfromweb == 1) print $langs->trans("ThisIsProcessToFollow").'<br>';
|
||||
else print $langs->trans("ThisIsAlternativeProcessToFollow").'<br>';
|
||||
print '<b>'.$langs->trans("StepNb",1).'</b>: ';
|
||||
print $langs->trans("FindPackageFromWebSite",$fullurl).'<br>';
|
||||
print '<b>'.$langs->trans("StepNb",2).'</b>: ';
|
||||
print $langs->trans("DownloadPackageFromWebSite",$fullurl).'<br>';
|
||||
print '<b>'.$langs->trans("StepNb",3).'</b>: ';
|
||||
|
||||
if ($allowfromweb == 1)
|
||||
{
|
||||
print $langs->trans("UnpackPackageInDolibarrRoot",$dirins).'<br>';
|
||||
print '<form enctype="multipart/form-data" method="POST" class="noborder" action="'.$_SERVER["PHP_SELF"].'" name="forminstall">';
|
||||
print '<input type="hidden" name="action" value="install">';
|
||||
print $langs->trans("YouCanSubmitFile").' <input type="file" name="fileinstall"> ';
|
||||
@ -184,16 +302,12 @@ if (! empty($conf->global->MAIN_ONLINE_INSTALL_MODULE))
|
||||
}
|
||||
else
|
||||
{
|
||||
$message=info_admin($langs->trans("NotExistsDirect",$dirins).$langs->trans("InfDirAlt").$langs->trans("InfDirExample"));
|
||||
setEventMessage($message, 'warnings');
|
||||
print $langs->trans("UnpackPackageInDolibarrRoot",$dirins).'<br>';
|
||||
print '<b>'.$langs->trans("StepNb",4).'</b>: ';
|
||||
print $langs->trans("SetupIsReadyForUse").'<br>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
print '<b>'.$langs->trans("StepNb",4).'</b>: ';
|
||||
print $langs->trans("SetupIsReadyForUse").'<br>';
|
||||
}
|
||||
print '</form>';
|
||||
|
||||
|
||||
if (! empty($result['return']))
|
||||
{
|
||||
|
||||
@ -2415,7 +2415,7 @@ class Propal extends CommonObject
|
||||
}
|
||||
|
||||
$response = new WorkboardResponse();
|
||||
$response->warning_delay = $delay_warning;
|
||||
$response->warning_delay = $delay_warning/60/60/24;
|
||||
$response->label = $label;
|
||||
$response->url = DOL_URL_ROOT.'/comm/propal/list.php?viewstatut='.$statut;
|
||||
$response->img = img_object($langs->trans("Propals"),"propal");
|
||||
|
||||
@ -790,7 +790,7 @@ class Commande extends CommonOrder
|
||||
$this->lines[$i]->fk_fournprice,
|
||||
$this->lines[$i]->pa_ht,
|
||||
$this->lines[$i]->label,
|
||||
$this->lines[$i]->array_options
|
||||
$this->lines[$i]->array_options
|
||||
);
|
||||
if ($result < 0)
|
||||
{
|
||||
@ -862,28 +862,25 @@ class Commande extends CommonOrder
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
$action='create';
|
||||
//$action='create';
|
||||
|
||||
// Actions on extra fields (by external module or standard code)
|
||||
// FIXME le hook fait double emploi avec le trigger !!
|
||||
$hookmanager->initHooks(array('orderdao'));
|
||||
/*$hookmanager->initHooks(array('orderdao'));
|
||||
$parameters=array('socid'=>$this->id);
|
||||
$reshook=$hookmanager->executeHooks('insertExtraFields',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
||||
if (empty($reshook))
|
||||
{
|
||||
if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used
|
||||
{
|
||||
{*/
|
||||
$result=$this->insertExtraFields();
|
||||
if ($result < 0)
|
||||
{
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
if ($result < 0) $error++;
|
||||
/* }
|
||||
}
|
||||
else if ($reshook < 0) $error++;
|
||||
else if ($reshook < 0) $error++;*/
|
||||
}
|
||||
|
||||
if (! $notrigger)
|
||||
if (! $error && ! $notrigger)
|
||||
{
|
||||
// Call trigger
|
||||
$result=$this->call_trigger('ORDER_CREATE',$user);
|
||||
@ -891,29 +888,27 @@ class Commande extends CommonOrder
|
||||
// End call triggers
|
||||
}
|
||||
|
||||
if (!$error) {
|
||||
if (! $error)
|
||||
{
|
||||
$this->db->commit();
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
foreach($this->errors as $errmsg)
|
||||
{
|
||||
dol_syslog(get_class($this)."::create ".$errmsg, LOG_ERR);
|
||||
$this->error.=($this->error?', '.$errmsg:$errmsg);
|
||||
}
|
||||
$this->db->rollback();
|
||||
return -1*$error;
|
||||
|
||||
else
|
||||
{
|
||||
$this->db->rollback();
|
||||
return -1*$error;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
$this->error=$this->db->lasterror();
|
||||
$this->db->rollback();
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
dol_print_error($this->db);
|
||||
$this->db->rollback();
|
||||
return -1;
|
||||
|
||||
@ -78,6 +78,16 @@ if ($negpage)
|
||||
|
||||
$object = new Account($db);
|
||||
|
||||
if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test are required to be compatible with all browsers
|
||||
{
|
||||
$paiementtype="";
|
||||
$req_nb="";
|
||||
$thirdparty="";
|
||||
$req_desc="";
|
||||
$req_debit="";
|
||||
$req_credit="";
|
||||
}
|
||||
|
||||
/*
|
||||
* Action
|
||||
*/
|
||||
@ -446,7 +456,10 @@ if ($id > 0 || ! empty($ref))
|
||||
print '<td align="right"><input type="text" class="flat" name="req_debit" value="'.$req_debit.'" size="4"></td>';
|
||||
print '<td align="right"><input type="text" class="flat" name="req_credit" value="'.$req_credit.'" size="4"></td>';
|
||||
print '<td align="center"> </td>';
|
||||
print '<td align="center" width="40"><input type="image" class="liste_titre" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'"></td>';
|
||||
print '<td class="liste_titre" align="right">';
|
||||
print '<input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
|
||||
print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("Search"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
|
||||
print '</td>';
|
||||
print "</tr>\n";
|
||||
|
||||
|
||||
|
||||
@ -111,8 +111,12 @@ foreach ($accounts as $key=>$type)
|
||||
if ($acc->rappro)
|
||||
{
|
||||
$result=$acc->load_board($user,$acc->id);
|
||||
print $acc->nbtodo;
|
||||
if ($acc->nbtodolate) print ' ('.$acc->nbtodolate.img_warning($langs->trans("Late")).')';
|
||||
if ($result<0) {
|
||||
setEventMessage($acc->error, 'errors');
|
||||
} else {
|
||||
print $result->nbtodo;
|
||||
if ($result->nbtodolate) print ' ('.$result->nbtodolate.img_warning($langs->trans("Late")).')';
|
||||
}
|
||||
}
|
||||
else print $langs->trans("FeatureDisabled");
|
||||
print '</td>';
|
||||
@ -223,8 +227,12 @@ foreach ($accounts as $key=>$type)
|
||||
if ($acc->rappro)
|
||||
{
|
||||
$result=$acc->load_board($user,$acc->id);
|
||||
print $acc->nbtodo;
|
||||
if ($acc->nbtodolate) print ' ('.$acc->nbtodolate.img_warning($langs->trans("Late")).')';
|
||||
if ($result<0) {
|
||||
setEventMessage($acc->error, 'errors');
|
||||
} else {
|
||||
print $result->nbtodo;
|
||||
if ($result->nbtodolate) print ' ('.$result->nbtodolate.img_warning($langs->trans("Late")).')';
|
||||
}
|
||||
}
|
||||
else print $langs->trans("FeatureDisabled");
|
||||
print '</td>';
|
||||
|
||||
@ -1,5 +0,0 @@
|
||||
<a href="index.php">Go back to index</a>
|
||||
| <a href="<?php echo $_SERVER["REQUEST_URI"];?>">Refresh</a>
|
||||
<br><br>
|
||||
|
||||
<?php phpinfo(); ?>
|
||||
123
htdocs/contact/document.php
Normal file
123
htdocs/contact/document.php
Normal file
@ -0,0 +1,123 @@
|
||||
<?php
|
||||
/* Copyright (C) 2014 Alexandre Spangaro <alexandre.spangaro@gmail.com>
|
||||
* Copyright (C) 2015 Frederic France <frederic.france@free.fr>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file htdocs/contact/document.php
|
||||
* \ingroup contact
|
||||
* \brief Page with attached files on contact
|
||||
*/
|
||||
|
||||
require '../main.inc.php';
|
||||
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
|
||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
|
||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
|
||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/contact.lib.php';
|
||||
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
|
||||
|
||||
$langs->load("other");
|
||||
$langs->load("companies");
|
||||
$langs->load("contact");
|
||||
|
||||
$id = GETPOST('id','int');
|
||||
$action = GETPOST("action");
|
||||
$confirm = GETPOST('confirm', 'alpha');
|
||||
|
||||
// Security check
|
||||
if ($user->societe_id) $socid=$user->societe_id;
|
||||
$result = restrictedArea($user, 'contact', $id, '','');
|
||||
|
||||
// Get parameters
|
||||
$sortfield = GETPOST("sortfield",'alpha');
|
||||
$sortorder = GETPOST("sortorder",'alpha');
|
||||
$page = GETPOST("page",'int');
|
||||
if ($page == -1) {
|
||||
$page = 0;
|
||||
}
|
||||
$offset = $conf->liste_limit * $page;
|
||||
$pageprev = $page - 1;
|
||||
$pagenext = $page + 1;
|
||||
if (! $sortorder) $sortorder="ASC";
|
||||
if (! $sortfield) $sortfield="name";
|
||||
|
||||
$object = new Contact($db);
|
||||
if ($id > 0) $object->fetch($id);
|
||||
|
||||
$upload_dir = $conf->societe->dir_output.'/contact/'.dol_sanitizeFileName($object->ref);
|
||||
$modulepart='contact';
|
||||
|
||||
|
||||
/*
|
||||
* Actions
|
||||
*/
|
||||
|
||||
include DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_pre_headers.tpl.php';
|
||||
|
||||
|
||||
/*
|
||||
* View
|
||||
*/
|
||||
|
||||
$form = new Form($db);
|
||||
|
||||
$help_url='EN:Module_Third_Parties|FR:Module_Tiers|ES:Empresas';
|
||||
llxHeader("",$langs->trans("Contact"), $helpurl);
|
||||
|
||||
if ($object->id)
|
||||
{
|
||||
$head = contact_prepare_head($object, $user);
|
||||
|
||||
dol_fiche_head($head, 'documents', $langs->trans("Contact"), 0, 'contact');
|
||||
|
||||
|
||||
// Construit liste des fichiers
|
||||
$filearray=dol_dir_list($upload_dir,"files",0,'','(\.meta|_preview\.png)$',$sortfield,(strtolower($sortorder)=='desc'?SORT_DESC:SORT_ASC),1);
|
||||
$totalsize=0;
|
||||
foreach($filearray as $key => $file)
|
||||
{
|
||||
$totalsize+=$file['size'];
|
||||
}
|
||||
|
||||
print '<table class="border" width="100%">';
|
||||
|
||||
// Ref
|
||||
print '<tr><td width="20%">'.$langs->trans("Ref").'</td><td colspan="3">';
|
||||
print $form->showrefnav($object, 'id', $linkback);
|
||||
print '</td></tr>';
|
||||
|
||||
// Name
|
||||
print '<tr><td width="20%">'.$langs->trans("Lastname").' / '.$langs->trans("Label").'</td><td width="30%">'.$object->lastname.'</td>';
|
||||
print '<td width="20%">'.$langs->trans("Firstname").'</td><td width="30%">'.$object->firstname.'</td></tr>';
|
||||
|
||||
print '<tr><td>'.$langs->trans("NbOfAttachedFiles").'</td><td colspan="3">'.count($filearray).'</td></tr>';
|
||||
print '<tr><td>'.$langs->trans("TotalSizeOfAttachedFiles").'</td><td colspan="3">'.$totalsize.' '.$langs->trans("bytes").'</td></tr>';
|
||||
print '</table>';
|
||||
|
||||
print '</div>';
|
||||
|
||||
$modulepart = 'contact';
|
||||
$permission = $user->rights->societe->contact->creer;
|
||||
$param = '&id=' . $object->id;
|
||||
include DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php';
|
||||
} else {
|
||||
print $langs->trans("ErrorUnknown");
|
||||
}
|
||||
|
||||
|
||||
llxFooter();
|
||||
|
||||
$db->close();
|
||||
@ -95,6 +95,7 @@ class box_actions extends ModeleBoxes
|
||||
$late = '';
|
||||
$objp = $db->fetch_object($result);
|
||||
$datelimite = $db->jdate($objp->dp);
|
||||
$actionstatic->id = $objp->id;
|
||||
$actionstatic->label = $objp->label;
|
||||
$actionstatic->type_label = $objp->type_label;
|
||||
$actionstatic->code = $objp->code;
|
||||
@ -108,7 +109,6 @@ class box_actions extends ModeleBoxes
|
||||
//($langs->transnoentities("Action".$objp->code)!=("Action".$objp->code) ? $langs->transnoentities("Action".$objp->code) : $objp->label)
|
||||
$label = empty($objp->label)?$objp->type_label:$objp->label;
|
||||
|
||||
$tooltip = $langs->trans('Action'.$objp->code).': '.$label;
|
||||
$this->info_box_contents[$line][] = array(
|
||||
'td' => 'align="left"',
|
||||
'text' => $actionstatic->getNomUrl(1),
|
||||
|
||||
@ -2871,7 +2871,7 @@ class Form
|
||||
{
|
||||
print '<option value="'.$obj->rowid.'">';
|
||||
}
|
||||
print $obj->label;
|
||||
print trim($obj->label);
|
||||
if ($statut == 2 && $obj->status == 1) print ' ('.$langs->trans("Closed").')';
|
||||
print '</option>';
|
||||
$i++;
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2010-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
||||
* Copyright (C) 2015 Frederic France <frederic.france@free.fr>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
@ -32,62 +33,75 @@ function contact_prepare_head(Contact $object)
|
||||
{
|
||||
global $langs, $conf, $user;
|
||||
|
||||
$h = 0;
|
||||
$tab = 0;
|
||||
$head = array();
|
||||
|
||||
$head[$h][0] = DOL_URL_ROOT.'/contact/card.php?id='.$object->id;
|
||||
$head[$h][1] = $langs->trans("Card");
|
||||
$head[$h][2] = 'card';
|
||||
$h++;
|
||||
$head[$tab][0] = DOL_URL_ROOT.'/contact/card.php?id='.$object->id;
|
||||
$head[$tab][1] = $langs->trans("Card");
|
||||
$head[$tab][2] = 'card';
|
||||
$tab++;
|
||||
|
||||
if (! empty($conf->ldap->enabled) && ! empty($conf->global->LDAP_CONTACT_ACTIVE))
|
||||
{
|
||||
$langs->load("ldap");
|
||||
|
||||
$head[$h][0] = DOL_URL_ROOT.'/contact/ldap.php?id='.$object->id;
|
||||
$head[$h][1] = $langs->trans("LDAPCard");
|
||||
$head[$h][2] = 'ldap';
|
||||
$h++;
|
||||
$head[$tab][0] = DOL_URL_ROOT.'/contact/ldap.php?id='.$object->id;
|
||||
$head[$tab][1] = $langs->trans("LDAPCard");
|
||||
$head[$tab][2] = 'ldap';
|
||||
$tab++;
|
||||
}
|
||||
|
||||
$head[$h][0] = DOL_URL_ROOT.'/contact/perso.php?id='.$object->id;
|
||||
$head[$h][1] = $langs->trans("PersonalInformations");
|
||||
$head[$h][2] = 'perso';
|
||||
$h++;
|
||||
$head[$tab][0] = DOL_URL_ROOT.'/contact/perso.php?id='.$object->id;
|
||||
$head[$tab][1] = $langs->trans("PersonalInformations");
|
||||
$head[$tab][2] = 'perso';
|
||||
$tab++;
|
||||
|
||||
$head[$h][0] = DOL_URL_ROOT.'/contact/exportimport.php?id='.$object->id;
|
||||
$head[$h][1] = $langs->trans("ExportImport");
|
||||
$head[$h][2] = 'exportimport';
|
||||
$h++;
|
||||
$head[$tab][0] = DOL_URL_ROOT.'/contact/exportimport.php?id='.$object->id;
|
||||
$head[$tab][1] = $langs->trans("ExportImport");
|
||||
$head[$tab][2] = 'exportimport';
|
||||
$tab++;
|
||||
|
||||
// Show more tabs from modules
|
||||
// Entries must be declared in modules descriptor with line
|
||||
// $this->tabs = array('entity:+tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to add new tab
|
||||
// $this->tabs = array('entity:-tabname); to remove a tab
|
||||
complete_head_from_modules($conf,$langs,$object,$head,$h,'contact');
|
||||
complete_head_from_modules($conf,$langs,$object,$head,$tab,'contact');
|
||||
|
||||
// Notes
|
||||
$head[$h][0] = DOL_URL_ROOT.'/contact/note.php?id='.$object->id;
|
||||
$head[$h][1] = $langs->trans("Note");
|
||||
$head[$h][2] = 'note';
|
||||
$h++;
|
||||
|
||||
if (empty($conf->global->MAIN_DISABLE_NOTES_TAB)) {
|
||||
$nbNote = (empty($object->note_private)?0:1)+(empty($object->note_public)?0:1);
|
||||
$head[$tab][0] = DOL_URL_ROOT.'/contact/note.php?id='.$object->id;
|
||||
$head[$tab][1] = $langs->trans("Note");
|
||||
if($nbNote > 0) $head[$tab][1].= ' <span class="badge">'.$nbNote.'</span>';
|
||||
$head[$tab][2] = 'note';
|
||||
$tab++;
|
||||
}
|
||||
|
||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
|
||||
$upload_dir = $conf->societe->dir_output . "/contact/" . dol_sanitizeFileName($object->ref);
|
||||
$nbFiles = count(dol_dir_list($upload_dir,'files',0,'','(\.meta|_preview\.png)$'));
|
||||
$head[$tab][0] = DOL_URL_ROOT.'/contact/document.php?id='.$object->id;
|
||||
$head[$tab][1] = $langs->trans("Documents");
|
||||
if($nbFiles > 0) $head[$tab][1].= ' <span class="badge">'.$nbFiles.'</span>';
|
||||
$head[$tab][2] = 'documents';
|
||||
$tab++;
|
||||
|
||||
if (! empty($conf->categorie->enabled) && ! empty($user->rights->categorie->lire))
|
||||
{
|
||||
$type = 4;
|
||||
$head[$h][0] = DOL_URL_ROOT.'/categories/categorie.php?id='.$object->id."&type=".$type;
|
||||
$head[$h][1] = $langs->trans('Categories');
|
||||
$head[$h][2] = 'category';
|
||||
$h++;
|
||||
$head[$tab][0] = DOL_URL_ROOT.'/categories/categorie.php?id='.$object->id."&type=".$type;
|
||||
$head[$tab][1] = $langs->trans('Categories');
|
||||
$head[$tab][2] = 'category';
|
||||
$tab++;
|
||||
}
|
||||
|
||||
// Info
|
||||
$head[$h][0] = DOL_URL_ROOT.'/contact/info.php?id='.$object->id;
|
||||
$head[$h][1] = $langs->trans("Info");
|
||||
$head[$h][2] = 'info';
|
||||
$h++;
|
||||
$head[$tab][0] = DOL_URL_ROOT.'/contact/info.php?id='.$object->id;
|
||||
$head[$tab][1] = $langs->trans("Info");
|
||||
$head[$tab][2] = 'info';
|
||||
$tab++;
|
||||
|
||||
complete_head_from_modules($conf,$langs,$object,$head,$h,'contact','remove');
|
||||
complete_head_from_modules($conf,$langs,$object,$head,$tab,'contact','remove');
|
||||
|
||||
return $head;
|
||||
}
|
||||
|
||||
@ -477,15 +477,19 @@ function dol_filemtime($pathoffile)
|
||||
*
|
||||
* @param string $srcfile Source file (can't be a directory)
|
||||
* @param string $destfile Destination file (can't be a directory)
|
||||
* @param int $newmask Mask for new file (0 by default means $conf->global->MAIN_UMASK)
|
||||
* @param int $newmask Mask for new file (0 by default means $conf->global->MAIN_UMASK). Example: '0666'
|
||||
* @param int $overwriteifexists Overwrite file if exists (1 by default)
|
||||
* @return int <0 if error, 0 if nothing done (dest file already exists and overwriteifexists=0), >0 if OK
|
||||
* @see dolCopyr
|
||||
*/
|
||||
function dol_copy($srcfile, $destfile, $newmask=0, $overwriteifexists=1)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
dol_syslog("files.lib.php::dol_copy srcfile=".$srcfile." destfile=".$destfile." newmask=".$newmask." overwriteifexists=".$overwriteifexists);
|
||||
|
||||
if (empty($srcfile) || empty($destfile)) return -1;
|
||||
|
||||
$destexists=dol_is_file($destfile);
|
||||
if (! $overwriteifexists && $destexists) return 0;
|
||||
|
||||
@ -523,12 +527,77 @@ function dol_copy($srcfile, $destfile, $newmask=0, $overwriteifexists=1)
|
||||
return 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Copy a dir to another dir.
|
||||
*
|
||||
* @param string $srcfile Source file (a directory)
|
||||
* @param string $destfile Destination file (a directory)
|
||||
* @param int $newmask Mask for new file (0 by default means $conf->global->MAIN_UMASK). Example: '0666'
|
||||
* @param int $overwriteifexists Overwrite file if exists (1 by default)
|
||||
* @return int <0 if error, 0 if nothing done (dest dir already exists and overwriteifexists=0), >0 if OK
|
||||
* @see dol_copy
|
||||
*/
|
||||
function dolCopyDir($srcfile, $destfile, $newmask, $overwriteifexists)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
$result=0;
|
||||
|
||||
dol_syslog("files.lib.php::dolCopyr srcfile=".$srcfile." destfile=".$destfile." newmask=".$newmask." overwriteifexists=".$overwriteifexists);
|
||||
|
||||
if (empty($srcfile) || empty($destfile)) return -1;
|
||||
|
||||
$destexists=dol_is_dir($destfile);
|
||||
if (! $overwriteifexists && $destexists) return 0;
|
||||
|
||||
$srcfile=dol_osencode($srcfile);
|
||||
$destfile=dol_osencode($destfile);
|
||||
|
||||
// recursive function to copy
|
||||
// all subdirectories and contents:
|
||||
if (is_dir($srcfile))
|
||||
{
|
||||
$dir_handle=opendir($srcfile);
|
||||
while ($file=readdir($dir_handle))
|
||||
{
|
||||
if ($file!="." && $file!="..")
|
||||
{
|
||||
if (is_dir($srcfile."/".$file))
|
||||
{
|
||||
if (!is_dir($destfile."/".$file))
|
||||
{
|
||||
umask(0);
|
||||
$dirmaskdec=octdec($newmask);
|
||||
if (empty($newmask) && ! empty($conf->global->MAIN_UMASK)) $dirmaskdec=octdec($conf->global->MAIN_UMASK);
|
||||
$dirmaskdec |= octdec('0200'); // Set w bit required to be able to create content for recursive subdirs files
|
||||
dol_mkdir($destfile."/".$file, '', decoct($dirmaskdec));
|
||||
}
|
||||
$result=dolCopyDir($srcfile."/".$file, $destfile."/".$file, $newmask, $overwriteifexists);
|
||||
}
|
||||
else
|
||||
{
|
||||
$result=dol_copy($srcfile."/".$file, $destfile."/".$file, $newmask, $overwriteifexists);
|
||||
}
|
||||
if ($result < 0) break;
|
||||
}
|
||||
}
|
||||
closedir($dir_handle);
|
||||
}
|
||||
else
|
||||
{
|
||||
$result=dol_copy($srcfile, $destfile, $newmask, $overwriteifexists);
|
||||
}
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Move a file into another name.
|
||||
* This function differs from dol_move_uploaded_file, because it can be called in any context.
|
||||
*
|
||||
* @param string $srcfile Source file (can't be a directory)
|
||||
* @param string $destfile Destination file (can't be a directory)
|
||||
* @param string $srcfile Source file (can't be a directory. use native php @rename() to move a directory)
|
||||
* @param string $destfile Destination file (can't be a directory. use native php @rename() to move a directory)
|
||||
* @param string $newmask Mask for new file (0 by default means $conf->global->MAIN_UMASK)
|
||||
* @param int $overwriteifexists Overwrite file if exists (1 by default)
|
||||
* @return boolean True if OK, false if KO
|
||||
@ -1261,19 +1330,40 @@ function dol_compress_file($inputfile, $outputfile, $mode="gz")
|
||||
*/
|
||||
function dol_uncompress($inputfile,$outputdir)
|
||||
{
|
||||
global $conf;
|
||||
global $conf, $langs;
|
||||
|
||||
if (defined('ODTPHP_PATHTOPCLZIP'))
|
||||
{
|
||||
dol_syslog("Constant ODTPHP_PATHTOPCLZIP for pclzip library is set to ".constant('ODTPHP_PATHTOPCLZIP').", so we use Pclzip to unzip into ".$outputdir);
|
||||
include_once ODTPHP_PATHTOPCLZIP.'/pclzip.lib.php';
|
||||
$archive = new PclZip($inputfile);
|
||||
if ($archive->extract(PCLZIP_OPT_PATH, $outputdir) == 0) return array('error'=>$archive->errorInfo(true));
|
||||
else return array();
|
||||
$result=$archive->extract(PCLZIP_OPT_PATH, $outputdir);
|
||||
//var_dump($result);
|
||||
if (! is_array($result) && $result <= 0) return array('error'=>$archive->errorInfo(true));
|
||||
else
|
||||
{
|
||||
$ok=1; $errmsg='';
|
||||
// Loop on each file to check result for unzipping file
|
||||
foreach($result as $key => $val)
|
||||
{
|
||||
if ($val['status'] == 'path_creation_fail')
|
||||
{
|
||||
$langs->load("errors");
|
||||
$ok=0;
|
||||
$errmsg=$langs->trans("ErrorFailToCreateDir", $val['filename']);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ($ok) return array();
|
||||
else return array('error'=>$errmsg);
|
||||
}
|
||||
}
|
||||
|
||||
if (class_exists('ZipArchive'))
|
||||
{
|
||||
$zip = new ZipArchive;
|
||||
dol_syslog("Class ZipArchive is set so we unzip using ZipArchive to unzip into ".$outputdir);
|
||||
$zip = new ZipArchive;
|
||||
$res = $zip->open($inputfile);
|
||||
if ($res === TRUE)
|
||||
{
|
||||
|
||||
@ -3728,9 +3728,10 @@ function get_exdir($num,$level=3,$alpha=0,$withoutslash=0)
|
||||
*
|
||||
* @param string $dir Directory to create (Separator must be '/'. Example: '/mydir/mysubdir')
|
||||
* @param string $dataroot Data root directory (To avoid having the data root in the loop. Using this will also lost the warning on first dir PHP has no permission when open_basedir is used)
|
||||
* @param int $newmask Mask for new file (0 by default means $conf->global->MAIN_UMASK). Example: '0444'
|
||||
* @return int < 0 if KO, 0 = already exists, > 0 if OK
|
||||
*/
|
||||
function dol_mkdir($dir, $dataroot='')
|
||||
function dol_mkdir($dir, $dataroot='', $newmask=0)
|
||||
{
|
||||
global $conf;
|
||||
|
||||
@ -3767,8 +3768,8 @@ function dol_mkdir($dir, $dataroot='')
|
||||
dol_syslog("functions.lib::dol_mkdir: Directory '".$ccdir."' does not exists or is outside open_basedir PHP setting.",LOG_DEBUG);
|
||||
|
||||
umask(0);
|
||||
$dirmaskdec=octdec('0755');
|
||||
if (! empty($conf->global->MAIN_UMASK)) $dirmaskdec=octdec($conf->global->MAIN_UMASK);
|
||||
$dirmaskdec=octdec($newmask);
|
||||
if (empty($newmask) && ! empty($conf->global->MAIN_UMASK)) $dirmaskdec=octdec($conf->global->MAIN_UMASK);
|
||||
$dirmaskdec |= octdec('0111'); // Set x bit required for directories
|
||||
if (! @mkdir($ccdir_osencoded, $dirmaskdec))
|
||||
{
|
||||
|
||||
@ -57,7 +57,7 @@ function tax_prepare_head(ChargeSociales $object)
|
||||
$nbFiles = count(dol_dir_list($upload_dir,'files',0,'','(\.meta|_preview\.png)$'));
|
||||
$head[$h][0] = DOL_URL_ROOT.'/compta/sociales/document.php?id='.$object->id;
|
||||
$head[$h][1] = $langs->trans("Documents");
|
||||
if($nbFiles > 0) $head[$h][1].= ' ('.$nbFiles.')';
|
||||
if($nbFiles > 0) $head[$h][1].= ' <span class="badge">'.$nbFiles.'</span>';
|
||||
$head[$h][2] = 'documents';
|
||||
$h++;
|
||||
|
||||
|
||||
@ -209,8 +209,11 @@ class modFacture extends DolibarrModules
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
break;
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
@ -265,7 +268,10 @@ class modFacture extends DolibarrModules
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
|
||||
@ -67,425 +67,446 @@ class modFournisseur extends DolibarrModules
|
||||
"/fournisseur/facture/temp"
|
||||
);
|
||||
|
||||
// Dependances
|
||||
$this->depends = array("modSociete");
|
||||
$this->requiredby = array();
|
||||
$this->langfiles = array('bills', 'companies', 'suppliers', 'orders');
|
||||
// Dependances
|
||||
$this->depends = array("modSociete");
|
||||
$this->requiredby = array();
|
||||
$this->langfiles = array('bills', 'companies', 'suppliers', 'orders');
|
||||
|
||||
// Config pages
|
||||
$this->config_page_url = array("supplier_order.php");
|
||||
// Config pages
|
||||
$this->config_page_url = array("supplier_order.php");
|
||||
|
||||
// Constantes
|
||||
$this->const = array();
|
||||
$r=0;
|
||||
// Constantes
|
||||
$this->const = array();
|
||||
$r=0;
|
||||
|
||||
$this->const[$r][0] = "COMMANDE_SUPPLIER_ADDON_PDF";
|
||||
$this->const[$r][1] = "chaine";
|
||||
$this->const[$r][2] = "muscadet";
|
||||
$this->const[$r][3] = 'Nom du gestionnaire de generation des bons de commande en PDF';
|
||||
$this->const[$r][4] = 0;
|
||||
$r++;
|
||||
$this->const[$r][0] = "COMMANDE_SUPPLIER_ADDON_PDF";
|
||||
$this->const[$r][1] = "chaine";
|
||||
$this->const[$r][2] = "muscadet";
|
||||
$this->const[$r][3] = 'Nom du gestionnaire de generation des bons de commande en PDF';
|
||||
$this->const[$r][4] = 0;
|
||||
$r++;
|
||||
|
||||
$this->const[$r][0] = "COMMANDE_SUPPLIER_ADDON_NUMBER";
|
||||
$this->const[$r][1] = "chaine";
|
||||
$this->const[$r][2] = "mod_commande_fournisseur_muguet";
|
||||
$this->const[$r][3] = 'Nom du gestionnaire de numerotation des commandes fournisseur';
|
||||
$this->const[$r][4] = 0;
|
||||
$r++;
|
||||
$this->const[$r][0] = "COMMANDE_SUPPLIER_ADDON_NUMBER";
|
||||
$this->const[$r][1] = "chaine";
|
||||
$this->const[$r][2] = "mod_commande_fournisseur_muguet";
|
||||
$this->const[$r][3] = 'Nom du gestionnaire de numerotation des commandes fournisseur';
|
||||
$this->const[$r][4] = 0;
|
||||
$r++;
|
||||
|
||||
$this->const[$r][0] = "INVOICE_SUPPLIER_ADDON_PDF";
|
||||
$this->const[$r][1] = "chaine";
|
||||
$this->const[$r][2] = "canelle";
|
||||
$this->const[$r][3] = 'Nom du gestionnaire de generation des factures fournisseur en PDF';
|
||||
$this->const[$r][4] = 0;
|
||||
$r++;
|
||||
$this->const[$r][0] = "INVOICE_SUPPLIER_ADDON_PDF";
|
||||
$this->const[$r][1] = "chaine";
|
||||
$this->const[$r][2] = "canelle";
|
||||
$this->const[$r][3] = 'Nom du gestionnaire de generation des factures fournisseur en PDF';
|
||||
$this->const[$r][4] = 0;
|
||||
$r++;
|
||||
|
||||
$this->const[$r][0] = "INVOICE_SUPPLIER_ADDON_NUMBER";
|
||||
$this->const[$r][1] = "chaine";
|
||||
$this->const[$r][2] = "mod_facture_fournisseur_cactus";
|
||||
$this->const[$r][3] = 'Nom du gestionnaire de numerotation des factures fournisseur';
|
||||
$this->const[$r][4] = 0;
|
||||
$r++;
|
||||
$this->const[$r][0] = "INVOICE_SUPPLIER_ADDON_NUMBER";
|
||||
$this->const[$r][1] = "chaine";
|
||||
$this->const[$r][2] = "mod_facture_fournisseur_cactus";
|
||||
$this->const[$r][3] = 'Nom du gestionnaire de numerotation des factures fournisseur';
|
||||
$this->const[$r][4] = 0;
|
||||
$r++;
|
||||
|
||||
// Boxes
|
||||
$this->boxes = array(
|
||||
0=>array('file'=>'box_graph_invoices_supplier_permonth.php','enabledbydefaulton'=>'Home'),
|
||||
1=>array('file'=>'box_graph_orders_supplier_permonth.php','enabledbydefaulton'=>'Home'),
|
||||
2=>array('file'=>'box_fournisseurs.php','enabledbydefaulton'=>'Home'),
|
||||
3=>array('file'=>'box_factures_fourn_imp.php','enabledbydefaulton'=>'Home'),
|
||||
4=>array('file'=>'box_factures_fourn.php','enabledbydefaulton'=>'Home'),
|
||||
5=>array('file'=>'box_supplier_orders.php','enabledbydefaulton'=>'Home'),
|
||||
);
|
||||
// Boxes
|
||||
$this->boxes = array(
|
||||
0=>array('file'=>'box_graph_invoices_supplier_permonth.php','enabledbydefaulton'=>'Home'),
|
||||
1=>array('file'=>'box_graph_orders_supplier_permonth.php','enabledbydefaulton'=>'Home'),
|
||||
2=>array('file'=>'box_fournisseurs.php','enabledbydefaulton'=>'Home'),
|
||||
3=>array('file'=>'box_factures_fourn_imp.php','enabledbydefaulton'=>'Home'),
|
||||
4=>array('file'=>'box_factures_fourn.php','enabledbydefaulton'=>'Home'),
|
||||
5=>array('file'=>'box_supplier_orders.php','enabledbydefaulton'=>'Home'),
|
||||
);
|
||||
|
||||
// Permissions
|
||||
$this->rights = array();
|
||||
$this->rights_class = 'fournisseur';
|
||||
$r=0;
|
||||
// Permissions
|
||||
$this->rights = array();
|
||||
$this->rights_class = 'fournisseur';
|
||||
$r=0;
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1181;
|
||||
$this->rights[$r][1] = 'Consulter les fournisseurs';
|
||||
$this->rights[$r][2] = 'r';
|
||||
$this->rights[$r][3] = 1;
|
||||
$this->rights[$r][4] = 'lire';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1181;
|
||||
$this->rights[$r][1] = 'Consulter les fournisseurs';
|
||||
$this->rights[$r][2] = 'r';
|
||||
$this->rights[$r][3] = 1;
|
||||
$this->rights[$r][4] = 'lire';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1182;
|
||||
$this->rights[$r][1] = 'Consulter les commandes fournisseur';
|
||||
$this->rights[$r][2] = 'r';
|
||||
$this->rights[$r][3] = 1;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'lire';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1182;
|
||||
$this->rights[$r][1] = 'Consulter les commandes fournisseur';
|
||||
$this->rights[$r][2] = 'r';
|
||||
$this->rights[$r][3] = 1;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'lire';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1183;
|
||||
$this->rights[$r][1] = 'Creer une commande fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'creer';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1183;
|
||||
$this->rights[$r][1] = 'Creer une commande fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'creer';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1184;
|
||||
$this->rights[$r][1] = 'Valider une commande fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'supplier_order_advance';
|
||||
$this->rights[$r][5] = 'validate';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1184;
|
||||
$this->rights[$r][1] = 'Valider une commande fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'supplier_order_advance';
|
||||
$this->rights[$r][5] = 'validate';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1185;
|
||||
$this->rights[$r][1] = 'Approuver une commande fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'approuver';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1185;
|
||||
$this->rights[$r][1] = 'Approuver une commande fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'approuver';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1186;
|
||||
$this->rights[$r][1] = 'Commander une commande fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'commander';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1186;
|
||||
$this->rights[$r][1] = 'Commander une commande fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'commander';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1187;
|
||||
$this->rights[$r][1] = 'Receptionner une commande fournisseur';
|
||||
$this->rights[$r][2] = 'd';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'receptionner';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1187;
|
||||
$this->rights[$r][1] = 'Receptionner une commande fournisseur';
|
||||
$this->rights[$r][2] = 'd';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'receptionner';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1189;
|
||||
$this->rights[$r][1] = 'Check/Uncheck a supplier order reception';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande_advance';
|
||||
$this->rights[$r][5] = 'check';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1189;
|
||||
$this->rights[$r][1] = 'Check/Uncheck a supplier order reception';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande_advance';
|
||||
$this->rights[$r][5] = 'check';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1188;
|
||||
$this->rights[$r][1] = 'Supprimer une commande fournisseur';
|
||||
$this->rights[$r][2] = 'd';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'supprimer';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1188;
|
||||
$this->rights[$r][1] = 'Supprimer une commande fournisseur';
|
||||
$this->rights[$r][2] = 'd';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'supprimer';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1231;
|
||||
$this->rights[$r][1] = 'Consulter les factures fournisseur';
|
||||
$this->rights[$r][2] = 'r';
|
||||
$this->rights[$r][3] = 1;
|
||||
$this->rights[$r][4] = 'facture';
|
||||
$this->rights[$r][5] = 'lire';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1232;
|
||||
$this->rights[$r][1] = 'Creer une facture fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'facture';
|
||||
$this->rights[$r][5] = 'creer';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1231;
|
||||
$this->rights[$r][1] = 'Consulter les factures fournisseur';
|
||||
$this->rights[$r][2] = 'r';
|
||||
$this->rights[$r][3] = 1;
|
||||
$this->rights[$r][4] = 'facture';
|
||||
$this->rights[$r][5] = 'lire';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1233;
|
||||
$this->rights[$r][1] = 'Valider une facture fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'supplier_invoice_advance';
|
||||
$this->rights[$r][5] = 'validate';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1232;
|
||||
$this->rights[$r][1] = 'Creer une facture fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'facture';
|
||||
$this->rights[$r][5] = 'creer';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1234;
|
||||
$this->rights[$r][1] = 'Supprimer une facture fournisseur';
|
||||
$this->rights[$r][2] = 'd';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'facture';
|
||||
$this->rights[$r][5] = 'supprimer';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1233;
|
||||
$this->rights[$r][1] = 'Valider une facture fournisseur';
|
||||
$this->rights[$r][2] = 'w';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'supplier_invoice_advance';
|
||||
$this->rights[$r][5] = 'validate';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1235;
|
||||
$this->rights[$r][1] = 'Envoyer les factures par mail';
|
||||
$this->rights[$r][2] = 'a';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'supplier_invoice_advance';
|
||||
$this->rights[$r][5] = 'send';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1234;
|
||||
$this->rights[$r][1] = 'Supprimer une facture fournisseur';
|
||||
$this->rights[$r][2] = 'd';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'facture';
|
||||
$this->rights[$r][5] = 'supprimer';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1236;
|
||||
$this->rights[$r][1] = 'Exporter les factures fournisseurs, attributs et reglements';
|
||||
$this->rights[$r][2] = 'r';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'facture';
|
||||
$this->rights[$r][5] = 'export';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1235;
|
||||
$this->rights[$r][1] = 'Envoyer les factures par mail';
|
||||
$this->rights[$r][2] = 'a';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'supplier_invoice_advance';
|
||||
$this->rights[$r][5] = 'send';
|
||||
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1237;
|
||||
$this->rights[$r][1] = 'Exporter les commande fournisseurs, attributs';
|
||||
$this->rights[$r][2] = 'r';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'export';
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1236;
|
||||
$this->rights[$r][1] = 'Exporter les factures fournisseurs, attributs et reglements';
|
||||
$this->rights[$r][2] = 'r';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'facture';
|
||||
$this->rights[$r][5] = 'export';
|
||||
|
||||
// Exports
|
||||
//--------
|
||||
$r=0;
|
||||
$r++;
|
||||
$this->rights[$r][0] = 1237;
|
||||
$this->rights[$r][1] = 'Exporter les commande fournisseurs, attributs';
|
||||
$this->rights[$r][2] = 'r';
|
||||
$this->rights[$r][3] = 0;
|
||||
$this->rights[$r][4] = 'commande';
|
||||
$this->rights[$r][5] = 'export';
|
||||
|
||||
$r++;
|
||||
$this->export_code[$r]=$this->rights_class.'_'.$r;
|
||||
$this->export_label[$r]='Factures fournisseurs et lignes de facture';
|
||||
$this->export_icon[$r]='bill';
|
||||
$this->export_permission[$r]=array(array("fournisseur","facture","export"));
|
||||
$this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','c.code'=>'CountryCode','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.idprof5'=>'ProfId5','s.idprof6'=>'ProfId6','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.ref'=>"InvoiceRef",'f.ref_supplier'=>"RefSupplier",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.total_ht'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.total_tva'=>"TotalVAT",'f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_public'=>"InvoiceNote",'fd.rowid'=>'LineId','fd.description'=>"LineDescription",'fd.tva_tx'=>"LineVATRate",'fd.qty'=>"LineQty",'fd.remise_percent'=>"Discount",'fd.total_ht'=>"LineTotalHT",'fd.total_ttc'=>"LineTotalTTC",'fd.tva'=>"LineTotalVAT",'fd.product_type'=>'TypeOfLineServiceOrProduct','fd.fk_product'=>'ProductId','p.ref'=>'ProductRef','p.label'=>'ProductLabel','p.accountancy_code_buy'=>'ProductAccountancyBuyCode');
|
||||
//$this->export_TypeFields_array[$r]=array('s.rowid'=>"List:societe:CompanyName",'s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.tva_intra'=>'Text','f.ref'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.total_ht'=>"Number",'f.total_ttc'=>"Number",'f.total_tva'=>"Number",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_public'=>"Text",'fd.description'=>"Text",'fd.tva_tx'=>"Text",'fd.qty'=>"Number",'fd.total_ht'=>"Number",'fd.total_ttc'=>"Number",'fd.tva'=>"Number",'fd.product_type'=>'Number','fd.fk_product'=>'List:Product:label','p.ref'=>'Text','p.label'=>'Text');
|
||||
$this->export_TypeFields_array[$r]=array('s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.tva_intra'=>'Text','f.ref'=>"Text",'f.ref_supplier'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.total_ht'=>"Number",'f.total_ttc'=>"Number",'f.total_tva'=>"Number",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_public'=>"Text",'fd.description'=>"Text",'fd.tva_tx'=>"Text",'fd.qty'=>"Number",'fd.total_ht'=>"Number",'fd.total_ttc'=>"Number",'fd.tva'=>"Number",'fd.product_type'=>'Number','fd.fk_product'=>'List:Product:label','p.ref'=>'Text','p.label'=>'Text');
|
||||
$this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','c.code'=>'company','s.phone'=>'company','s.siren'=>'company','s.siret'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.idprof5'=>'company','s.idprof6'=>'company','s.tva_intra'=>'company','f.rowid'=>"invoice",'f.ref'=>"invoice",'f.ref_supplier'=>"invoice",'f.datec'=>"invoice",'f.datef'=>"invoice",'f.total_ht'=>"invoice",'f.total_ttc'=>"invoice",'f.total_tva'=>"invoice",'f.paye'=>"invoice",'f.fk_statut'=>'invoice','f.note_public'=>"invoice",'fd.rowid'=>'invoice_line','fd.description'=>"invoice_line",'fd.tva_tx'=>"invoice_line",'fd.qty'=>"invoice_line",'fd.remise_percent'=>"invoice_line",'fd.total_ht'=>"invoice_line",'fd.total_ttc'=>"invoice_line",'fd.tva'=>"invoice_line",'fd.product_type'=>'invoice_line','fd.fk_product'=>'product','p.ref'=>'product','p.label'=>'product','p.accountancy_code_buy'=>'product');
|
||||
$this->export_dependencies_array[$r]=array('invoice_line'=>'fd.rowid','product'=>'fd.rowid'); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them
|
||||
// Add extra fields object
|
||||
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'facture_fourn'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||
// Exports
|
||||
//--------
|
||||
$r=0;
|
||||
|
||||
$r++;
|
||||
$this->export_code[$r]=$this->rights_class.'_'.$r;
|
||||
$this->export_label[$r]='Factures fournisseurs et lignes de facture';
|
||||
$this->export_icon[$r]='bill';
|
||||
$this->export_permission[$r]=array(array("fournisseur","facture","export"));
|
||||
$this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','c.code'=>'CountryCode','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.idprof5'=>'ProfId5','s.idprof6'=>'ProfId6','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.ref'=>"InvoiceRef",'f.ref_supplier'=>"RefSupplier",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.total_ht'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.total_tva'=>"TotalVAT",'f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_public'=>"InvoiceNote",'fd.rowid'=>'LineId','fd.description'=>"LineDescription",'fd.tva_tx'=>"LineVATRate",'fd.qty'=>"LineQty",'fd.remise_percent'=>"Discount",'fd.total_ht'=>"LineTotalHT",'fd.total_ttc'=>"LineTotalTTC",'fd.tva'=>"LineTotalVAT",'fd.product_type'=>'TypeOfLineServiceOrProduct','fd.fk_product'=>'ProductId','p.ref'=>'ProductRef','p.label'=>'ProductLabel','p.accountancy_code_buy'=>'ProductAccountancyBuyCode');
|
||||
//$this->export_TypeFields_array[$r]=array('s.rowid'=>"List:societe:CompanyName",'s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.tva_intra'=>'Text','f.ref'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.total_ht'=>"Number",'f.total_ttc'=>"Number",'f.total_tva'=>"Number",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_public'=>"Text",'fd.description'=>"Text",'fd.tva_tx'=>"Text",'fd.qty'=>"Number",'fd.total_ht'=>"Number",'fd.total_ttc'=>"Number",'fd.tva'=>"Number",'fd.product_type'=>'Number','fd.fk_product'=>'List:Product:label','p.ref'=>'Text','p.label'=>'Text');
|
||||
$this->export_TypeFields_array[$r]=array('s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.tva_intra'=>'Text','f.ref'=>"Text",'f.ref_supplier'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.total_ht'=>"Number",'f.total_ttc'=>"Number",'f.total_tva'=>"Number",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_public'=>"Text",'fd.description'=>"Text",'fd.tva_tx'=>"Text",'fd.qty'=>"Number",'fd.total_ht'=>"Number",'fd.total_ttc'=>"Number",'fd.tva'=>"Number",'fd.product_type'=>'Number','fd.fk_product'=>'List:Product:label','p.ref'=>'Text','p.label'=>'Text');
|
||||
$this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','c.code'=>'company','s.phone'=>'company','s.siren'=>'company','s.siret'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.idprof5'=>'company','s.idprof6'=>'company','s.tva_intra'=>'company','f.rowid'=>"invoice",'f.ref'=>"invoice",'f.ref_supplier'=>"invoice",'f.datec'=>"invoice",'f.datef'=>"invoice",'f.total_ht'=>"invoice",'f.total_ttc'=>"invoice",'f.total_tva'=>"invoice",'f.paye'=>"invoice",'f.fk_statut'=>'invoice','f.note_public'=>"invoice",'fd.rowid'=>'invoice_line','fd.description'=>"invoice_line",'fd.tva_tx'=>"invoice_line",'fd.qty'=>"invoice_line",'fd.remise_percent'=>"invoice_line",'fd.total_ht'=>"invoice_line",'fd.total_ttc'=>"invoice_line",'fd.tva'=>"invoice_line",'fd.product_type'=>'invoice_line','fd.fk_product'=>'product','p.ref'=>'product','p.label'=>'product','p.accountancy_code_buy'=>'product');
|
||||
$this->export_dependencies_array[$r]=array('invoice_line'=>'fd.rowid','product'=>'fd.rowid'); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them
|
||||
// Add extra fields object
|
||||
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'facture_fourn'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||
{
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
{
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
$fieldname='extra.'.$obj->name;
|
||||
$fieldlabel=ucfirst($obj->label);
|
||||
$typeFilter="Text";
|
||||
switch($obj->type)
|
||||
{
|
||||
$fieldname='extra.'.$obj->name;
|
||||
$fieldlabel=ucfirst($obj->label);
|
||||
$typeFilter="Text";
|
||||
switch($obj->type)
|
||||
{
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'price':
|
||||
$typeFilter="Numeric";
|
||||
break;
|
||||
case 'date':
|
||||
case 'datetime':
|
||||
$typeFilter="Date";
|
||||
break;
|
||||
case 'boolean':
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
$this->export_entities_array[$r][$fieldname]='invoice';
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'price':
|
||||
$typeFilter="Numeric";
|
||||
break;
|
||||
case 'date':
|
||||
case 'datetime':
|
||||
$typeFilter="Date";
|
||||
break;
|
||||
case 'boolean':
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
$this->export_entities_array[$r][$fieldname]='invoice';
|
||||
}
|
||||
// End add extra fields
|
||||
// Add extra fields line
|
||||
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'facture_fourn_det'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||
}
|
||||
// End add extra fields
|
||||
// Add extra fields line
|
||||
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'facture_fourn_det'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||
{
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
{
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
$fieldname='extraline.'.$obj->name;
|
||||
$fieldlabel=ucfirst($obj->label);
|
||||
$typeFilter="Text";
|
||||
switch($obj->type)
|
||||
{
|
||||
$fieldname='extraline.'.$obj->name;
|
||||
$fieldlabel=ucfirst($obj->label);
|
||||
$typeFilter="Text";
|
||||
switch($obj->type)
|
||||
{
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'price':
|
||||
$typeFilter="Numeric";
|
||||
break;
|
||||
case 'date':
|
||||
case 'datetime':
|
||||
$typeFilter="Date";
|
||||
break;
|
||||
case 'boolean':
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
$this->export_entities_array[$r][$fieldname]='invoice_line';
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'price':
|
||||
$typeFilter="Numeric";
|
||||
break;
|
||||
case 'date':
|
||||
case 'datetime':
|
||||
$typeFilter="Date";
|
||||
break;
|
||||
case 'boolean':
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
$this->export_entities_array[$r][$fieldname]='invoice_line';
|
||||
}
|
||||
// End add extra fields line
|
||||
$this->export_sql_start[$r]='SELECT DISTINCT ';
|
||||
$this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as c ON s.fk_pays = c.rowid,';
|
||||
$this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'facture_fourn as f';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'facture_fourn_extrafields as extra ON f.rowid = extra.fk_object';
|
||||
$this->export_sql_end[$r] .=' , '.MAIN_DB_PREFIX.'facture_fourn_det as fd';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'facture_fourn_det_extrafields as extraline ON fd.rowid = extraline.fk_object';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'product as p on (fd.fk_product = p.rowid)';
|
||||
$this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid AND f.rowid = fd.fk_facture_fourn';
|
||||
$this->export_sql_end[$r] .=' AND f.entity IN ('.getEntity('supplier_invoice',1).')';
|
||||
}
|
||||
// End add extra fields line
|
||||
$this->export_sql_start[$r]='SELECT DISTINCT ';
|
||||
$this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as c ON s.fk_pays = c.rowid,';
|
||||
$this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'facture_fourn as f';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'facture_fourn_extrafields as extra ON f.rowid = extra.fk_object';
|
||||
$this->export_sql_end[$r] .=' , '.MAIN_DB_PREFIX.'facture_fourn_det as fd';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'facture_fourn_det_extrafields as extraline ON fd.rowid = extraline.fk_object';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'product as p on (fd.fk_product = p.rowid)';
|
||||
$this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid AND f.rowid = fd.fk_facture_fourn';
|
||||
$this->export_sql_end[$r] .=' AND f.entity IN ('.getEntity('supplier_invoice',1).')';
|
||||
|
||||
$r++;
|
||||
$this->export_code[$r]=$this->rights_class.'_'.$r;
|
||||
$this->export_label[$r]='Factures fournisseurs et reglements';
|
||||
$this->export_icon[$r]='bill';
|
||||
$this->export_permission[$r]=array(array("fournisseur","facture","export"));
|
||||
$this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','c.code'=>'CountryCode','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.idprof5'=>'ProfId5','s.idprof6'=>'ProfId6','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.ref'=>"InvoiceRef",'f.ref_supplier'=>"RefSupplier",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.total_ht'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.total_tva'=>"TotalVAT",'f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_public'=>"InvoiceNote",'p.rowid'=>'PaymentId','pf.amount'=>'AmountPayment','p.datep'=>'DatePayment','p.num_paiement'=>'PaymentNumber');
|
||||
//$this->export_TypeFields_array[$r]=array('s.rowid'=>"List:societe:CompanyName",'s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.tva_intra'=>'Text','f.ref'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.total_ht'=>"Number",'f.total_ttc'=>"Number",'f.total_tva'=>"Number",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_public'=>"Text",'pf.amount'=>'Number','p.datep'=>'Date','p.num_paiement'=>'Number');
|
||||
$this->export_TypeFields_array[$r]=array('s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.tva_intra'=>'Text','f.ref'=>"Text",'f.ref_supplier'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.total_ht'=>"Number",'f.total_ttc'=>"Number",'f.total_tva'=>"Number",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_public'=>"Text",'pf.amount'=>'Number','p.datep'=>'Date','p.num_paiement'=>'Number');
|
||||
$this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','c.code'=>'company','s.phone'=>'company','s.siren'=>'company','s.siret'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.idprof5'=>'company','s.idprof6'=>'company','s.tva_intra'=>'company','f.rowid'=>"invoice",'f.ref'=>"invoice",'f.ref_supplier'=>"invoice",'f.datec'=>"invoice",'f.datef'=>"invoice",'f.total_ht'=>"invoice",'f.total_ttc'=>"invoice",'f.total_tva'=>"invoice",'f.paye'=>"invoice",'f.fk_statut'=>'invoice','f.note_public'=>"invoice",'p.rowid'=>'payment','pf.amount'=>'payment','p.datep'=>'payment','p.num_paiement'=>'payment');
|
||||
$this->export_dependencies_array[$r]=array('payment'=>'p.rowid'); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them
|
||||
// Add extra fields object
|
||||
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'facture_fourn'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||
$r++;
|
||||
$this->export_code[$r]=$this->rights_class.'_'.$r;
|
||||
$this->export_label[$r]='Factures fournisseurs et reglements';
|
||||
$this->export_icon[$r]='bill';
|
||||
$this->export_permission[$r]=array(array("fournisseur","facture","export"));
|
||||
$this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','c.code'=>'CountryCode','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.idprof5'=>'ProfId5','s.idprof6'=>'ProfId6','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.ref'=>"InvoiceRef",'f.ref_supplier'=>"RefSupplier",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.total_ht'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.total_tva'=>"TotalVAT",'f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_public'=>"InvoiceNote",'p.rowid'=>'PaymentId','pf.amount'=>'AmountPayment','p.datep'=>'DatePayment','p.num_paiement'=>'PaymentNumber');
|
||||
//$this->export_TypeFields_array[$r]=array('s.rowid'=>"List:societe:CompanyName",'s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.tva_intra'=>'Text','f.ref'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.total_ht'=>"Number",'f.total_ttc'=>"Number",'f.total_tva'=>"Number",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_public'=>"Text",'pf.amount'=>'Number','p.datep'=>'Date','p.num_paiement'=>'Number');
|
||||
$this->export_TypeFields_array[$r]=array('s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.tva_intra'=>'Text','f.ref'=>"Text",'f.ref_supplier'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.total_ht'=>"Number",'f.total_ttc'=>"Number",'f.total_tva'=>"Number",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_public'=>"Text",'pf.amount'=>'Number','p.datep'=>'Date','p.num_paiement'=>'Number');
|
||||
$this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','c.code'=>'company','s.phone'=>'company','s.siren'=>'company','s.siret'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.idprof5'=>'company','s.idprof6'=>'company','s.tva_intra'=>'company','f.rowid'=>"invoice",'f.ref'=>"invoice",'f.ref_supplier'=>"invoice",'f.datec'=>"invoice",'f.datef'=>"invoice",'f.total_ht'=>"invoice",'f.total_ttc'=>"invoice",'f.total_tva'=>"invoice",'f.paye'=>"invoice",'f.fk_statut'=>'invoice','f.note_public'=>"invoice",'p.rowid'=>'payment','pf.amount'=>'payment','p.datep'=>'payment','p.num_paiement'=>'payment');
|
||||
$this->export_dependencies_array[$r]=array('payment'=>'p.rowid'); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them
|
||||
// Add extra fields object
|
||||
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'facture_fourn'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||
{
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
{
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
$fieldname='extra.'.$obj->name;
|
||||
$fieldlabel=ucfirst($obj->label);
|
||||
$typeFilter="Text";
|
||||
switch($obj->type)
|
||||
{
|
||||
$fieldname='extra.'.$obj->name;
|
||||
$fieldlabel=ucfirst($obj->label);
|
||||
$typeFilter="Text";
|
||||
switch($obj->type)
|
||||
{
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'price':
|
||||
$typeFilter="Numeric";
|
||||
break;
|
||||
case 'date':
|
||||
case 'datetime':
|
||||
$typeFilter="Date";
|
||||
break;
|
||||
case 'boolean':
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
$this->export_entities_array[$r][$fieldname]='invoice';
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'price':
|
||||
$typeFilter="Numeric";
|
||||
break;
|
||||
case 'date':
|
||||
case 'datetime':
|
||||
$typeFilter="Date";
|
||||
break;
|
||||
case 'boolean':
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
$this->export_entities_array[$r][$fieldname]='invoice';
|
||||
}
|
||||
// End add extra fields object
|
||||
$this->export_sql_start[$r]='SELECT DISTINCT ';
|
||||
$this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as c ON s.fk_pays = c.rowid,';
|
||||
$this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'facture_fourn as f';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'facture_fourn_extrafields as extra ON f.rowid = extra.fk_object';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'paiementfourn_facturefourn as pf ON pf.fk_facturefourn = f.rowid';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'paiementfourn as p ON pf.fk_paiementfourn = p.rowid';
|
||||
$this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid';
|
||||
$this->export_sql_end[$r] .=' AND f.entity IN ('.getEntity('supplier_invoice',1).')';
|
||||
}
|
||||
// End add extra fields object
|
||||
$this->export_sql_start[$r]='SELECT DISTINCT ';
|
||||
$this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as c ON s.fk_pays = c.rowid,';
|
||||
$this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'facture_fourn as f';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'facture_fourn_extrafields as extra ON f.rowid = extra.fk_object';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'paiementfourn_facturefourn as pf ON pf.fk_facturefourn = f.rowid';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'paiementfourn as p ON pf.fk_paiementfourn = p.rowid';
|
||||
$this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid';
|
||||
$this->export_sql_end[$r] .=' AND f.entity IN ('.getEntity('supplier_invoice',1).')';
|
||||
|
||||
|
||||
|
||||
$r++;
|
||||
$this->export_code[$r]=$this->rights_class.'_'.$r;
|
||||
$this->export_label[$r]='Commandes fournisseurs et lignes de commandes';
|
||||
$this->export_icon[$r]='order';
|
||||
$this->export_permission[$r]=array(array("fournisseur","commande","export"));
|
||||
$this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','c.code'=>'CountryCode','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.idprof5'=>'ProfId5','s.idprof6'=>'ProfId6','s.tva_intra'=>'VATIntra','f.rowid'=>"OrderId",'f.ref'=>"Ref",'f.ref_supplier'=>"RefSupplier",'f.date_creation'=>"DateCreation",'f.date_commande'=>"OrderDate",'f.total_ht'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'f.fk_statut'=>'Status','f.note_public'=>"NotePublic",'f.note_private'=>"NotePrivate",'fd.rowid'=>'LineId','fd.description'=>"LineDescription",'fd.tva_tx'=>"LineVATRate",'fd.qty'=>"LineQty",'fd.remise_percent'=>"Discount",'fd.total_ht'=>"LineTotalHT",'fd.total_ttc'=>"LineTotalTTC",'fd.total_tva'=>"LineTotalVAT",'fd.product_type'=>'TypeOfLineServiceOrProduct','fd.fk_product'=>'ProductId','p.ref'=>'ProductRef','p.label'=>'ProductLabel');
|
||||
$this->export_TypeFields_array[$r]=array('s.rowid'=>"company",'s.nom'=>'Text','s.address'=>'Text','s.cp'=>'Text','s.ville'=>'Text','c.code'=>'Text','s.tel'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.idprof5'=>'Text','s.idprof6'=>'Text','s.tva_intra'=>'Text','f.ref'=>"Text",'f.ref_supplier'=>"Text",'f.date_creation'=>"Date",'f.date_commande'=>"Date",'f.total_ht'=>"Number",'f.total_ttc'=>"Number",'f.tva'=>"Number",'f.fk_statut'=>'Status','f.note_public'=>"Text",'f.note_private'=>"Text",'fd.description'=>"Text",'fd.tva_tx'=>"Number",'fd.qty'=>"Number",'fd.remise_percent'=>"Number",'fd.total_ht'=>"Number",'fd.total_ttc'=>"Number",'fd.total_tva'=>"Number",'fd.product_type'=>'Number','fd.fk_product'=>'List:Product:label','p.ref'=>'Text','p.label'=>'Text');
|
||||
$this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','c.code'=>'company','s.phone'=>'company','s.siren'=>'company','s.siret'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.idprof5'=>'company','s.idprof6'=>'company','s.tva_intra'=>'company','f.rowid'=>"order",'f.ref'=>"order",'f.ref_supplier'=>"order",'f.date_creation'=>"order",'f.date_commande'=>"order",'f.total_ht'=>"order",'f.total_ttc'=>"order",'f.tva'=>"order",'f.fk_statut'=>'order','f.note_public'=>"order",'f.note_private'=>"order",'fd.rowid'=>'order_line','fd.description'=>"order_line",'fd.tva_tx'=>"order_line",'fd.qty'=>"order_line",'fd.remise_percent'=>"order_line",'fd.total_ht'=>"order_line",'fd.total_ttc'=>"order_line",'fd.total_tva'=>"order_line",'fd.product_type'=>'order_line','fd.fk_product'=>'product','p.ref'=>'product','p.label'=>'product');
|
||||
$this->export_dependencies_array[$r]=array('order_line'=>'fd.rowid','product'=>'fd.rowid'); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them
|
||||
// Add extra fields object
|
||||
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'commande_fournisseur'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||
// Order
|
||||
$r++;
|
||||
$this->export_code[$r]=$this->rights_class.'_'.$r;
|
||||
$this->export_label[$r]='Commandes fournisseurs et lignes de commandes';
|
||||
$this->export_icon[$r]='order';
|
||||
$this->export_permission[$r]=array(array("fournisseur","commande","export"));
|
||||
$this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','c.code'=>'CountryCode','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.idprof5'=>'ProfId5','s.idprof6'=>'ProfId6','s.tva_intra'=>'VATIntra','f.rowid'=>"OrderId",'f.ref'=>"Ref",'f.ref_supplier'=>"RefSupplier",'f.date_creation'=>"DateCreation",'f.date_commande'=>"OrderDate",'f.total_ht'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'f.fk_statut'=>'Status','f.date_approve'=>'DateApprove','f.date_approve2'=>'DateApprove2','f.note_public'=>"NotePublic",'f.note_private'=>"NotePrivate",'ua1.login'=>'ApprovedBy','ua2.login'=>'ApprovedBy2','fd.rowid'=>'LineId','fd.description'=>"LineDescription",'fd.tva_tx'=>"LineVATRate",'fd.qty'=>"LineQty",'fd.remise_percent'=>"Discount",'fd.total_ht'=>"LineTotalHT",'fd.total_ttc'=>"LineTotalTTC",'fd.total_tva'=>"LineTotalVAT",'fd.product_type'=>'TypeOfLineServiceOrProduct','fd.fk_product'=>'ProductId','p.ref'=>'ProductRef','p.label'=>'ProductLabel');
|
||||
if (empty($conf->global->SUPPLIER_ORDER_DOUBLE_APPROVAL))
|
||||
{
|
||||
unset($this->export_fields_array['f.date_approve2']);
|
||||
unset($this->export_fields_array['ua2.login']);
|
||||
}
|
||||
$this->export_TypeFields_array[$r]=array('s.rowid'=>"company",'s.nom'=>'Text','s.address'=>'Text','s.cp'=>'Text','s.ville'=>'Text','c.code'=>'Text','s.tel'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.idprof5'=>'Text','s.idprof6'=>'Text','s.tva_intra'=>'Text','f.ref'=>"Text",'f.ref_supplier'=>"Text",'f.date_creation'=>"Date",'f.date_commande'=>"Date",'f.total_ht'=>"Number",'f.total_ttc'=>"Number",'f.tva'=>"Number",'f.fk_statut'=>'Status','f.date_approve'=>'Date','f.date_approve2'=>'Date','f.note_public'=>"Text",'f.note_private'=>"Text",'fd.description'=>"Text",'fd.tva_tx'=>"Number",'fd.qty'=>"Number",'fd.remise_percent'=>"Number",'fd.total_ht'=>"Number",'fd.total_ttc'=>"Number",'fd.total_tva'=>"Number",'fd.product_type'=>'Number','fd.fk_product'=>'List:product:label','p.ref'=>'Text','p.label'=>'Text');
|
||||
$this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','c.code'=>'company','s.phone'=>'company','s.siren'=>'company','s.siret'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.idprof5'=>'company','s.idprof6'=>'company','s.tva_intra'=>'company','ua1.login'=>'user','ua2.login'=>'user','fd.rowid'=>'order_line','fd.description'=>"order_line",'fd.tva_tx'=>"order_line",'fd.qty'=>"order_line",'fd.remise_percent'=>"order_line",'fd.total_ht'=>"order_line",'fd.total_ttc'=>"order_line",'fd.total_tva'=>"order_line",'fd.product_type'=>'order_line','fd.fk_product'=>'product','p.ref'=>'product','p.label'=>'product');
|
||||
$this->export_dependencies_array[$r]=array('order_line'=>'fd.rowid','product'=>'fd.rowid'); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them
|
||||
// Add extra fields object
|
||||
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'commande_fournisseur'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||
{
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
{
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
$fieldname='extra.'.$obj->name;
|
||||
$fieldlabel=ucfirst($obj->label);
|
||||
$typeFilter="Text";
|
||||
switch($obj->type)
|
||||
{
|
||||
$fieldname='extra.'.$obj->name;
|
||||
$fieldlabel=ucfirst($obj->label);
|
||||
$typeFilter="Text";
|
||||
switch($obj->type)
|
||||
{
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'price':
|
||||
$typeFilter="Numeric";
|
||||
break;
|
||||
case 'date':
|
||||
case 'datetime':
|
||||
$typeFilter="Date";
|
||||
break;
|
||||
case 'boolean':
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
$this->export_entities_array[$r][$fieldname]='order';
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'price':
|
||||
$typeFilter="Numeric";
|
||||
break;
|
||||
case 'date':
|
||||
case 'datetime':
|
||||
$typeFilter="Date";
|
||||
break;
|
||||
case 'boolean':
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
$this->export_entities_array[$r][$fieldname]='order';
|
||||
}
|
||||
// End add extra fields object
|
||||
// Add extra fields line
|
||||
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'commande_fournisseurdet'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||
}
|
||||
// End add extra fields object
|
||||
// Add extra fields line
|
||||
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'commande_fournisseurdet'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||
{
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
{
|
||||
while ($obj=$this->db->fetch_object($resql))
|
||||
$fieldname='extraline.'.$obj->name;
|
||||
$fieldlabel=ucfirst($obj->label);
|
||||
$typeFilter="Text";
|
||||
switch($obj->type)
|
||||
{
|
||||
$fieldname='extraline.'.$obj->name;
|
||||
$fieldlabel=ucfirst($obj->label);
|
||||
$typeFilter="Text";
|
||||
switch($obj->type)
|
||||
{
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'price':
|
||||
$typeFilter="Numeric";
|
||||
break;
|
||||
case 'date':
|
||||
case 'datetime':
|
||||
$typeFilter="Date";
|
||||
break;
|
||||
case 'boolean':
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
$this->export_entities_array[$r][$fieldname]='order_line';
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'price':
|
||||
$typeFilter="Numeric";
|
||||
break;
|
||||
case 'date':
|
||||
case 'datetime':
|
||||
$typeFilter="Date";
|
||||
break;
|
||||
case 'boolean':
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
$this->export_entities_array[$r][$fieldname]='order_line';
|
||||
}
|
||||
// End add extra fields line
|
||||
$this->export_sql_start[$r]='SELECT DISTINCT ';
|
||||
$this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as c ON s.fk_pays = c.rowid,';
|
||||
$this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'commande_fournisseur as f';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'commande_fournisseur_extrafields as extra ON f.rowid = extra.fk_object,';
|
||||
$this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'commande_fournisseurdet as fd';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'commande_fournisseurdet_extrafields as extraline ON fd.rowid = extraline.fk_object';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'product as p on (fd.fk_product = p.rowid)';
|
||||
$this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid AND f.rowid = fd.fk_commande';
|
||||
$this->export_sql_end[$r] .=' AND f.entity IN ('.getEntity('supplier_order',1).')';
|
||||
|
||||
}
|
||||
// End add extra fields line
|
||||
$this->export_sql_start[$r]='SELECT DISTINCT ';
|
||||
$this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as c ON s.fk_pays = c.rowid,';
|
||||
$this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'commande_fournisseur as f';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'user as ua1 ON ua1.rowid = f.fk_user_approve';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'user as ua2 ON ua2.rowid = f.fk_user_approve2';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'commande_fournisseur_extrafields as extra ON f.rowid = extra.fk_object,';
|
||||
$this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'commande_fournisseurdet as fd';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'commande_fournisseurdet_extrafields as extraline ON fd.rowid = extraline.fk_object';
|
||||
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'product as p on (fd.fk_product = p.rowid)';
|
||||
$this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid AND f.rowid = fd.fk_commande';
|
||||
$this->export_sql_end[$r] .=' AND f.entity IN ('.getEntity('supplier_order',1).')';
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -190,7 +190,10 @@ class modProduct extends DolibarrModules
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
|
||||
@ -231,8 +231,11 @@ class modProjet extends DolibarrModules
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
break;
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
@ -269,8 +272,11 @@ class modProjet extends DolibarrModules
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
break;
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
|
||||
@ -171,7 +171,10 @@ class modService extends DolibarrModules
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
|
||||
@ -294,8 +294,11 @@ class modSociete extends DolibarrModules
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
break;
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
@ -353,8 +356,11 @@ class modSociete extends DolibarrModules
|
||||
$typeFilter="Boolean";
|
||||
break;
|
||||
case 'sellist':
|
||||
$typeFilter="List:".$obj->param;
|
||||
break;
|
||||
$tmp='';
|
||||
$tmpparam=unserialize($obj->param); // $tmp ay be array 'options' => array 'c_currencies:code_iso:code_iso' => null
|
||||
if ($tmpparam['options'] && is_array($tmpparam['options'])) $tmp=array_shift(array_keys($tmpparam['options']));
|
||||
if (preg_match('/[a-z0-9_]+:[a-z0-9_]+:[a-z0-9_]+/', $tmp)) $typeFilter="List:".$tmp;
|
||||
break;
|
||||
}
|
||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||
|
||||
@ -55,7 +55,7 @@ class mod_syslog_chromephp extends LogHandler implements LogHandlerInterface
|
||||
set_include_path($conf->global->SYSLOG_CHROMEPHP_INCLUDEPATH);
|
||||
|
||||
//print 'rrrrr'.get_include_path();
|
||||
$res = include_once('ChromePhp.php');
|
||||
$res = @include_once('ChromePhp.php');
|
||||
if (! $res) $res=@include_once('ChromePhp.class.php');
|
||||
|
||||
restore_include_path();
|
||||
|
||||
@ -48,7 +48,7 @@ if (empty($reshook) && ! empty($extrafields->attribute_label))
|
||||
print '<tr><td>';
|
||||
print '<table width="100%" class="nobordernopadding"><tr><td';
|
||||
//var_dump($action);exit;
|
||||
if ((! empty($action) && $action != 'view') && ! empty($extrafields->attribute_required[$key])) print ' class="fieldrequired"';
|
||||
if ((! empty($action) && ($action == 'create' || $action == 'edit')) && ! empty($extrafields->attribute_required[$key])) print ' class="fieldrequired"';
|
||||
print '>' . $label . '</td>';
|
||||
|
||||
//TODO Improve element and rights detection
|
||||
|
||||
@ -119,6 +119,7 @@ class InterfaceDemo extends DolibarrTriggers
|
||||
case 'ORDER_CLONE':
|
||||
case 'ORDER_VALIDATE':
|
||||
case 'ORDER_DELETE':
|
||||
case 'ORDER_CANCEL':
|
||||
case 'ORDER_SENTBYMAIL':
|
||||
case 'ORDER_CLASSIFY_BILLED':
|
||||
case 'LINEORDER_INSERT':
|
||||
@ -134,6 +135,7 @@ class InterfaceDemo extends DolibarrTriggers
|
||||
case 'ORDER_SUPPLIER_REFUSE':
|
||||
case 'ORDER_SUPPLIER_CANCEL':
|
||||
case 'ORDER_SUPPLIER_SENTBYMAIL':
|
||||
case 'ORDER_SUPPLIER_DISPATCH':
|
||||
case 'LINEORDER_SUPPLIER_DISPATCH':
|
||||
case 'LINEORDER_SUPPLIER_CREATE':
|
||||
case 'LINEORDER_SUPPLIER_UPDATE':
|
||||
|
||||
@ -106,7 +106,7 @@ if ($action == 'update')
|
||||
$object->email = GETPOST("email");
|
||||
$object->date = $donation_date;
|
||||
$object->public = GETPOST("public");
|
||||
$object->fk_project = GETPOST("fk_project");
|
||||
$object->fk_projet = GETPOST("fk_projet");
|
||||
$object->note_private= GETPOST("note_private");
|
||||
$object->note_public = GETPOST("note_public");
|
||||
|
||||
@ -161,7 +161,7 @@ if ($action == 'add')
|
||||
$object->note_private= GETPOST("note_private");
|
||||
$object->note_public = GETPOST("note_public");
|
||||
$object->public = GETPOST("public");
|
||||
$object->fk_project = GETPOST("fk_project");
|
||||
$object->fk_projet = GETPOST("fk_projet");
|
||||
|
||||
// Fill array 'array_options' with data from add form
|
||||
$ret = $extrafields->setOptionalsFromPost($extralabels,$object);
|
||||
@ -343,7 +343,7 @@ if ($action == 'create')
|
||||
$formproject=new FormProjets($db);
|
||||
|
||||
print "<tr><td>".$langs->trans("Project")."</td><td>";
|
||||
$formproject->select_projects(-1, GETPOST("fk_project"),'fk_project', 0, 1, 0, 1);
|
||||
$formproject->select_projects(-1, GETPOST("fk_projet"),'fk_projet', 0, 1, 0, 1);
|
||||
print "</td></tr>\n";
|
||||
}
|
||||
|
||||
@ -459,7 +459,7 @@ if (! empty($id) && $action == 'edit')
|
||||
|
||||
$langs->load('projects');
|
||||
print '<tr><td>'.$langs->trans('Project').'</td><td>';
|
||||
$formproject->select_projects(-1, $object->fk_project,'fk_project', 0, 1, 0, 1);
|
||||
$formproject->select_projects(-1, $object->fk_projet,'fk_projet', 0, 1, 0, 1);
|
||||
print '</td></tr>';
|
||||
}
|
||||
|
||||
|
||||
@ -54,7 +54,7 @@ class Don extends CommonObject
|
||||
var $country;
|
||||
var $email;
|
||||
var $public;
|
||||
var $fk_project;
|
||||
var $fk_projet;
|
||||
var $modepaiement;
|
||||
var $modepaiementid;
|
||||
var $note_private;
|
||||
@ -337,7 +337,7 @@ class Don extends CommonObject
|
||||
// $sql.= ", country"; -- Deprecated
|
||||
$sql.= ", fk_country";
|
||||
$sql.= ", public";
|
||||
$sql.= ", fk_project";
|
||||
$sql.= ", fk_projet";
|
||||
$sql.= ", note_private";
|
||||
$sql.= ", note_public";
|
||||
$sql.= ", fk_user_author";
|
||||
@ -359,7 +359,7 @@ class Don extends CommonObject
|
||||
$sql.= ", '".$this->db->escape($this->town)."'";
|
||||
$sql.= ", ".$this->country_id;
|
||||
$sql.= ", ".$this->public;
|
||||
$sql.= ", ".($this->fk_project > 0?$this->fk_project:"null");
|
||||
$sql.= ", ".($this->fk_projet > 0?$this->fk_projet:"null");
|
||||
$sql.= ", ".(!empty($this->note_private)?("'".$this->db->escape($this->note_private)."'"):"NULL");
|
||||
$sql.= ", ".(!empty($this->note_public)?("'".$this->db->escape($this->note_public)."'"):"NULL");
|
||||
$sql.= ", ".$user->id;
|
||||
@ -455,7 +455,7 @@ class Don extends CommonObject
|
||||
$sql .= ",town='".$this->db->escape($this->town)."'";
|
||||
$sql .= ",fk_country = ".$this->country_id;
|
||||
$sql .= ",public=".$this->public;
|
||||
$sql .= ",fk_project=".($this->fk_project>0?$this->fk_project:'null');
|
||||
$sql .= ",fk_projet=".($this->fk_projet>0?$this->fk_projet:'null');
|
||||
$sql .= ",note_private=".(!empty($this->note_private)?("'".$this->db->escape($this->note_private)."'"):"NULL");
|
||||
$sql .= ",note_public=".(!empty($this->note_public)?("'".$this->db->escape($this->note_public)."'"):"NULL");
|
||||
$sql .= ",datedon='".$this->db->idate($this->date)."'";
|
||||
@ -601,11 +601,11 @@ class Don extends CommonObject
|
||||
$sql = "SELECT d.rowid, d.datec, d.tms as datem, d.datedon,";
|
||||
$sql.= " d.firstname, d.lastname, d.societe, d.amount, d.fk_statut, d.address, d.zip, d.town, ";
|
||||
$sql.= " d.fk_country, d.country as country_olddata, d.public, d.amount, d.fk_payment, d.paid, d.note_private, d.note_public, cp.libelle, d.email, d.phone, ";
|
||||
$sql.= " d.phone_mobile, d.fk_project,";
|
||||
$sql.= " d.phone_mobile, d.fk_projet,";
|
||||
$sql.= " p.title as project_label,";
|
||||
$sql.= " c.code as country_code, c.label as country";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."don as d";
|
||||
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."projet as p ON p.rowid = d.fk_project";
|
||||
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."projet as p ON p.rowid = d.fk_projet";
|
||||
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."c_paiement as cp ON cp.id = d.fk_payment";
|
||||
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."c_country as c ON d.fk_country = c.rowid";
|
||||
if (! empty($id))
|
||||
@ -647,7 +647,7 @@ class Don extends CommonObject
|
||||
$this->phone = $obj->phone;
|
||||
$this->phone_mobile = $obj->phone_mobile;
|
||||
$this->project = $obj->project_label;
|
||||
$this->fk_project = $obj->fk_project;
|
||||
$this->fk_projet = $obj->fk_projet;
|
||||
$this->public = $obj->public;
|
||||
$this->modepaymentid = $obj->fk_payment;
|
||||
$this->modepayment = $obj->libelle;
|
||||
@ -677,8 +677,8 @@ class Don extends CommonObject
|
||||
/**
|
||||
* Validate a promise of donation
|
||||
*
|
||||
* @param int $id id of donation
|
||||
* @param int $userid User who validate the promise
|
||||
* @param int $id id of donation
|
||||
* @param int $userid User who validate the donation/promise
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function valid_promesse($id, $userid)
|
||||
@ -706,16 +706,16 @@ class Don extends CommonObject
|
||||
}
|
||||
|
||||
/**
|
||||
* Classe le don comme paye, le don a ete recu
|
||||
* Classify the donation as paid, the donation was received
|
||||
*
|
||||
* @param int $id id du don a modifier
|
||||
* @param int $modepaiement mode de paiement
|
||||
* @param int $id id of donation
|
||||
* @param int $modepayment mode of payment
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function set_paid($id, $modepaiement='')
|
||||
function set_paid($id, $modepayment='')
|
||||
{
|
||||
$sql = "UPDATE ".MAIN_DB_PREFIX."don SET fk_statut = 2";
|
||||
if ($modepaiement)
|
||||
if ($modepayment)
|
||||
{
|
||||
$sql .= ", fk_payment=$modepayment";
|
||||
}
|
||||
@ -741,7 +741,7 @@ class Don extends CommonObject
|
||||
}
|
||||
|
||||
/**
|
||||
* Set donation to status canceled
|
||||
* Set donation to status cancelled
|
||||
*
|
||||
* @param int $id id of donation
|
||||
* @return int <0 if KO, >0 if OK
|
||||
|
||||
@ -73,7 +73,7 @@ $sql = "SELECT d.rowid, d.datedon, d.firstname, d.lastname, d.societe,";
|
||||
$sql.= " d.amount, d.fk_statut as statut, ";
|
||||
$sql.= " p.rowid as pid, p.ref, p.title, p.public";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."don as d LEFT JOIN ".MAIN_DB_PREFIX."projet AS p";
|
||||
$sql.= " ON p.rowid = d.fk_project WHERE 1 = 1";
|
||||
$sql.= " ON p.rowid = d.fk_projet WHERE 1 = 1";
|
||||
if ($statut >= 0)
|
||||
{
|
||||
$sql .= " AND d.fk_statut = ".$statut;
|
||||
@ -125,7 +125,7 @@ if ($resql)
|
||||
if (! empty($conf->projet->enabled))
|
||||
{
|
||||
$langs->load("projects");
|
||||
print_liste_field_titre($langs->trans("Project"),$_SERVER["PHP_SELF"],"fk_project","&page=$page&statut=$statut","","",$sortfield,$sortorder);
|
||||
print_liste_field_titre($langs->trans("Project"),$_SERVER["PHP_SELF"],"fk_projet","&page=$page&statut=$statut","","",$sortfield,$sortorder);
|
||||
}
|
||||
print_liste_field_titre($langs->trans("Amount"),$_SERVER["PHP_SELF"],"d.amount","&page=$page&statut=$statut","",'align="right"',$sortfield,$sortorder);
|
||||
print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"d.fk_statut","&page=$page&statut=$statut","",'align="right"',$sortfield,$sortorder);
|
||||
|
||||
@ -202,7 +202,7 @@ $sql.= ' WHERE pd.fk_donation = d.rowid';
|
||||
$sql.= ' AND d.entity = '.$conf->entity;
|
||||
$sql.= ' AND pd.rowid = '.$id;
|
||||
|
||||
dol_syslog("donations/payment/card.php", LOG_DEBUG);
|
||||
dol_syslog("don/payment/card.php", LOG_DEBUG);
|
||||
$resql=$db->query($sql);
|
||||
if ($resql)
|
||||
{
|
||||
|
||||
@ -1075,7 +1075,7 @@ class Expedition extends CommonObject
|
||||
}
|
||||
if (file_exists($dir))
|
||||
{
|
||||
if (!dol_delete_dir($dir))
|
||||
if (!dol_delete_dir_recursive($dir))
|
||||
{
|
||||
$this->error=$langs->trans("ErrorCanNotDeleteDir",$dir);
|
||||
return 0;
|
||||
|
||||
@ -337,15 +337,15 @@ class Export
|
||||
/**
|
||||
* Build an input field used to filter the query
|
||||
*
|
||||
* @param string $TypeField Type of Field to filter. Example: Text, List:c_country:label:rowid, List:c_stcom:label:code, Number, Boolean
|
||||
* @param string $TypeField Type of Field to filter. Example: Text, Date, List:c_country:label:rowid, List:c_stcom:label:code, Numeric or Number, Boolean
|
||||
* @param string $NameField Name of the field to filter
|
||||
* @param string $ValueField Initial value of the field to filter
|
||||
* @return string html string of the input field ex : "<input type=text name=... value=...>"
|
||||
*/
|
||||
function build_filterField($TypeField, $NameField, $ValueField)
|
||||
{
|
||||
global $langs;
|
||||
|
||||
global $conf,$langs;
|
||||
|
||||
$szFilterField='';
|
||||
$InfoFieldList = explode(":", $TypeField);
|
||||
|
||||
@ -354,9 +354,14 @@ class Export
|
||||
{
|
||||
case 'Text':
|
||||
case 'Date':
|
||||
$szFilterField='<input type="text" name="'.$NameField.'" value="'.$ValueField.'">';
|
||||
break;
|
||||
case 'Duree':
|
||||
case 'Numeric':
|
||||
$szFilterField='<input type="text" name="'.$NameField.'" value="'.$ValueField.'">';
|
||||
case 'Number':
|
||||
case 'Status':
|
||||
if (! empty($conf->global->MAIN_ACTIVATE_HTML5)) $szFilterField='<input type="number" size="6" name="'.$NameField.'" value="'.$ValueField.'">';
|
||||
else $szFilterField='<input type="text" size="6" name="'.$NameField.'" value="'.$ValueField.'">';
|
||||
break;
|
||||
case 'Boolean':
|
||||
$szFilterField='<select name="'.$NameField.'" class="flat">';
|
||||
@ -365,12 +370,12 @@ class Export
|
||||
$szFilterField.=' value=""> </option>';
|
||||
|
||||
$szFilterField.='<option ';
|
||||
if ($ValueField=='yes') $szFilterField.=' selected ';
|
||||
$szFilterField.=' value="yes">'.yn(1).'</option>';
|
||||
if ($ValueField=='yes' || $ValueField == '1') $szFilterField.=' selected ';
|
||||
$szFilterField.=' value="1">'.yn(1).'</option>';
|
||||
|
||||
$szFilterField.='<option ';
|
||||
if ($ValueField=='no') $szFilterField.=' selected ';
|
||||
$szFilterField.=' value="no">'.yn(0).'</option>';
|
||||
if ($ValueField=='no' || $ValueField=='0') $szFilterField.=' selected ';
|
||||
$szFilterField.=' value="0">'.yn(0).'</option>';
|
||||
$szFilterField.="</select>";
|
||||
break;
|
||||
case 'List':
|
||||
@ -408,12 +413,12 @@ class Export
|
||||
}
|
||||
//var_dump($InfoFieldList[1]);
|
||||
$labeltoshow=dol_trunc($obj->label,18);
|
||||
if ($InfoFieldList[1] == 'c_stcomm')
|
||||
if ($InfoFieldList[1] == 'c_stcomm')
|
||||
{
|
||||
$langs->load("companies");
|
||||
$labeltoshow=(($langs->trans("StatusProspect".$obj->id) != "StatusProspect".$obj->id)?$langs->trans("StatusProspect".$obj->id):$obj->label);
|
||||
}
|
||||
if ($InfoFieldList[1] == 'c_country')
|
||||
if ($InfoFieldList[1] == 'c_country')
|
||||
{
|
||||
//var_dump($sql);
|
||||
$langs->load("dict");
|
||||
|
||||
@ -1066,6 +1066,12 @@ class CommandeFournisseur extends CommonOrder
|
||||
}
|
||||
}
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
$result=$this->insertExtraFields();
|
||||
if ($result < 0) $error++;
|
||||
}
|
||||
|
||||
if (! $error && ! $notrigger)
|
||||
{
|
||||
// Call trigger
|
||||
@ -1376,9 +1382,10 @@ class CommandeFournisseur extends CommonOrder
|
||||
* @param date $sellby sell-by date
|
||||
* @param string $batch Lot number
|
||||
* @param int $fk_commandefourndet Id of supplier order line
|
||||
* @param int $notrigger 1 = notrigger
|
||||
* @return int <0 if KO, >0 if OK
|
||||
*/
|
||||
function dispatchProduct($user, $product, $qty, $entrepot, $price=0, $comment='', $eatby='', $sellby='', $batch='', $fk_commandefourndet='')
|
||||
function dispatchProduct($user, $product, $qty, $entrepot, $price=0, $comment='', $eatby='', $sellby='', $batch='', $fk_commandefourndet=0, $notrigger=0)
|
||||
{
|
||||
global $conf;
|
||||
$error = 0;
|
||||
|
||||
@ -180,7 +180,8 @@ if (empty($reshook))
|
||||
// Set project
|
||||
if ($action == 'classin' && $user->rights->fournisseur->commande->creer)
|
||||
{
|
||||
$object->setProject($projectid);
|
||||
$result=$object->setProject($projectid);
|
||||
if ($result < 0) setEventMessages($object->error, $object->errors, 'errors');
|
||||
}
|
||||
|
||||
if ($action == 'setremisepercent' && $user->rights->fournisseur->commande->creer)
|
||||
@ -223,7 +224,7 @@ if (empty($reshook))
|
||||
{
|
||||
$db->rollback();
|
||||
|
||||
setEventMessage($object->error, 'errors');
|
||||
setEventMessages($object->error, $object->errors, 'errors');
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -448,7 +449,7 @@ if (empty($reshook))
|
||||
}
|
||||
else
|
||||
{
|
||||
setEventMessage($object->error, 'errors');
|
||||
setEventMessages($object->error, $object->errors, 'errors');
|
||||
}
|
||||
}
|
||||
|
||||
@ -619,7 +620,7 @@ if (empty($reshook))
|
||||
}
|
||||
|
||||
// If we have permission, and if we don't need to provide the idwarehouse, we go directly on approved step
|
||||
if ($user->rights->fournisseur->commande->approuver && ! (! empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER) && $object->hasProductsOrServices(1)))
|
||||
if (empty($conf->global->SUPPLIER_ORDER_NO_DIRECT_APPROVE) && $user->rights->fournisseur->commande->approuver && ! (! empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER) && $object->hasProductsOrServices(1)))
|
||||
{
|
||||
$action='confirm_approve'; // can make standard or first level approval also if permission is set
|
||||
}
|
||||
@ -670,8 +671,8 @@ if (empty($reshook))
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
setEventMessage($object->error, 'errors');
|
||||
{
|
||||
setEventMessages($object->error, $object->errors, 'errors');
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -686,7 +687,7 @@ if (empty($reshook))
|
||||
}
|
||||
else
|
||||
{
|
||||
setEventMessage($object->error, 'errors');
|
||||
setEventMessages($object->error, $object->errors, 'errors');
|
||||
}
|
||||
}
|
||||
|
||||
@ -703,7 +704,7 @@ if (empty($reshook))
|
||||
}
|
||||
else
|
||||
{
|
||||
setEventMessage($object->error, 'errors');
|
||||
setEventMessages($object->error, $object->errors, 'errors');
|
||||
}
|
||||
}
|
||||
|
||||
@ -718,7 +719,7 @@ if (empty($reshook))
|
||||
}
|
||||
else
|
||||
{
|
||||
setEventMessage($object->error, 'errors');
|
||||
setEventMessages($object->error, $object->errors, 'errors');
|
||||
}
|
||||
}
|
||||
|
||||
@ -741,7 +742,7 @@ if (empty($reshook))
|
||||
}
|
||||
else
|
||||
{
|
||||
setEventMessage($object->error, 'errors');
|
||||
setEventMessages($object->error, $object->errors, 'errors');
|
||||
$action='';
|
||||
}
|
||||
}
|
||||
@ -786,7 +787,7 @@ if (empty($reshook))
|
||||
}
|
||||
else
|
||||
{
|
||||
setEventMessage($object->error, 'errors');
|
||||
setEventMessages($object->error, $object->errors, 'errors');
|
||||
}
|
||||
}
|
||||
|
||||
@ -917,22 +918,20 @@ if (empty($reshook))
|
||||
}
|
||||
|
||||
$object_id = $object->create($user);
|
||||
|
||||
if ($object_id > 0)
|
||||
{
|
||||
dol_include_once('/' . $element . '/class/' . $subelement . '.class.php');
|
||||
|
||||
$classname = ucfirst($subelement);
|
||||
$srcobject = new $classname($db);
|
||||
$srcobject->fetch($object->origin_id);
|
||||
|
||||
$object->set_date_livraison($user, $srcobject->date_livraison);
|
||||
$object->set_id_projet($user, $srcobject->fk_project);
|
||||
|
||||
dol_syslog("Try to find source object origin=" . $object->origin . " originid=" . $object->origin_id . " to add lines");
|
||||
$result = $srcobject->fetch($object->origin_id);
|
||||
if ($result > 0)
|
||||
{
|
||||
$object->set_date_livraison($user, $srcobject->date_livraison);
|
||||
$object->set_id_projet($user, $srcobject->fk_project);
|
||||
|
||||
$lines = $srcobject->lines;
|
||||
if (empty($lines) && method_exists($srcobject, 'fetch_lines'))
|
||||
{
|
||||
@ -1009,11 +1008,11 @@ if (empty($reshook))
|
||||
if ($reshook < 0)
|
||||
$error ++;
|
||||
} else {
|
||||
setEventMessage($srcobject->error, 'errors');
|
||||
setEventMessages($srcobject->error, $srcobject->errors, 'errors');
|
||||
$error ++;
|
||||
}
|
||||
} else {
|
||||
setEventMessage($object->error, 'errors');
|
||||
setEventMessages($object->error, $object->errors, 'errors');
|
||||
$error ++;
|
||||
}
|
||||
}
|
||||
@ -1023,7 +1022,7 @@ if (empty($reshook))
|
||||
if ($id < 0)
|
||||
{
|
||||
$error++;
|
||||
setEventMessage($langs->trans($object->error), 'errors');
|
||||
setEventMessages($object->error, $object->errors, 'errors');
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1969,11 +1968,12 @@ elseif (! empty($object->id))
|
||||
$cols = 3;
|
||||
include DOL_DOCUMENT_ROOT . '/core/tpl/extrafields_view.tpl.php';
|
||||
|
||||
// Ligne de 3 colonnes
|
||||
// Total
|
||||
print '<tr><td>'.$langs->trans("AmountHT").'</td>';
|
||||
print '<td colspan="2">'.price($object->total_ht,'',$langs,1,-1,-1,$conf->currency).'</td>';
|
||||
print '</tr>';
|
||||
|
||||
// Total VAT
|
||||
print '<tr><td>'.$langs->trans("AmountVAT").'</td><td colspan="2">'.price($object->total_tva,'',$langs,1,-1,-1,$conf->currency).'</td>';
|
||||
print '</tr>';
|
||||
|
||||
@ -1991,6 +1991,7 @@ elseif (! empty($object->id))
|
||||
print '</tr>';
|
||||
}
|
||||
|
||||
// Total TTC
|
||||
print '<tr><td>'.$langs->trans("AmountTTC").'</td><td colspan="2">'.price($object->total_ttc,'',$langs,1,-1,-1,$conf->currency).'</td>';
|
||||
print '</tr>';
|
||||
|
||||
|
||||
@ -130,10 +130,10 @@ if ($action == 'dispatch' && $user->rights->fournisseur->commande->receptionner)
|
||||
setEventMessage($langs->trans('ErrorFieldRequired',$text), 'errors');
|
||||
$error++;
|
||||
}
|
||||
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
$result = $commande->DispatchProduct($user, GETPOST($prod,'int'),GETPOST($qty), GETPOST($ent,'int'), GETPOST($pu), GETPOST("comment"), '', '', '', GETPOST($fk_commandefourndet, 'int'));
|
||||
$result = $commande->DispatchProduct($user, GETPOST($prod,'int'),GETPOST($qty), GETPOST($ent,'int'), GETPOST($pu), GETPOST("comment"), '', '', '', GETPOST($fk_commandefourndet, 'int'), $notrigger);
|
||||
if ($result < 0)
|
||||
{
|
||||
setEventMessages($commande->error, $commande->errors, 'errors');
|
||||
@ -155,6 +155,7 @@ if ($action == 'dispatch' && $user->rights->fournisseur->commande->receptionner)
|
||||
$dDLUO = dol_mktime(12, 0, 0, $_POST['dluo_'.$reg[1]."_".$reg[2].'month'], $_POST['dluo_'.$reg[1]."_".$reg[2].'day'], $_POST['dluo_'.$reg[1]."_".$reg[2].'year']);
|
||||
$dDLC = dol_mktime(12, 0, 0, $_POST['dlc_'.$reg[1]."_".$reg[2].'month'], $_POST['dlc_'.$reg[1]."_".$reg[2].'day'], $_POST['dlc_'.$reg[1]."_".$reg[2].'year']);
|
||||
|
||||
$fk_commandefourndet = "fk_commandefourndet_".$reg[1]."_".$reg[2];
|
||||
if (GETPOST($qty) > 0) // We ask to move a qty
|
||||
{
|
||||
if (! (GETPOST($ent,'int') > 0))
|
||||
@ -172,10 +173,10 @@ if ($action == 'dispatch' && $user->rights->fournisseur->commande->receptionner)
|
||||
setEventMessage($langs->trans('ErrorFieldRequired',$text), 'errors');
|
||||
$error++;
|
||||
}
|
||||
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
$result = $commande->dispatchProduct($user, GETPOST($prod,'int'), GETPOST($qty), GETPOST($ent,'int'), GETPOST($pu), GETPOST("comment"), $dDLC, $dDLUO, GETPOST($lot, 'alpha'), GETPOST($fk_commandefourndet, 'int'));
|
||||
$result = $commande->dispatchProduct($user, GETPOST($prod,'int'), GETPOST($qty), GETPOST($ent,'int'), GETPOST($pu), GETPOST("comment"), $dDLC, $dDLUO, GETPOST($lot, 'alpha'), GETPOST($fk_commandefourndet, 'int'), $notrigger);
|
||||
if ($result < 0)
|
||||
{
|
||||
setEventMessages($commande->error, $commande->errors, 'errors');
|
||||
@ -191,7 +192,7 @@ if ($action == 'dispatch' && $user->rights->fournisseur->commande->receptionner)
|
||||
{
|
||||
global $conf, $langs, $user;
|
||||
// Call trigger
|
||||
$result=$commande->call_trigger('ORDER_SUPPLIER_DISPATCH',$user);
|
||||
$result = $commande->call_trigger('ORDER_SUPPLIER_DISPATCH', $user);
|
||||
// End call triggers
|
||||
|
||||
if ($result < 0)
|
||||
@ -597,7 +598,7 @@ if ($id > 0 || ! empty($ref))
|
||||
while ($i < $num)
|
||||
{
|
||||
$objp = $db->fetch_object($resql);
|
||||
|
||||
|
||||
print "<tr ".$bc[$var].">";
|
||||
print '<td>';
|
||||
print '<a href="'.DOL_URL_ROOT.'/product/fournisseurs.php?id='.$objp->fk_product.'">'.img_object($langs->trans("ShowProduct"),'product').' '.$objp->ref.'</a>';
|
||||
@ -640,7 +641,7 @@ if ($id > 0 || ! empty($ref))
|
||||
|| (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && empty($user->rights->fournisseur->commande_advance->check))
|
||||
)
|
||||
{
|
||||
if (empty($objp->status))
|
||||
if (empty($objp->status))
|
||||
{
|
||||
print '<a class="button buttonRefused" href="#">'.$langs->trans("Check").'</a>';
|
||||
}
|
||||
@ -653,18 +654,18 @@ if ($id > 0 || ! empty($ref))
|
||||
{
|
||||
$disabled='';
|
||||
if ($commande->statut == 5) $disabled=1;
|
||||
if (empty($objp->status))
|
||||
if (empty($objp->status))
|
||||
{
|
||||
print '<a class="button'.($disabled?' buttonRefused':'').'" href="'.$_SERVER["PHP_SELF"]."?id=".$id."&action=checkdispatchline&lineid=".$objp->dispatchlineid.'">'.$langs->trans("Check").'</a>';
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
print '<a class="button'.($disabled?' buttonRefused':'').'" href="'.$_SERVER["PHP_SELF"]."?id=".$id."&action=uncheckdispatchline&lineid=".$objp->dispatchlineid.'">'.$langs->trans("Uncheck").'</a>';
|
||||
}
|
||||
}
|
||||
print '</td>';
|
||||
print '</td>';
|
||||
}
|
||||
|
||||
|
||||
print "</tr>\n";
|
||||
|
||||
$i++;
|
||||
|
||||
@ -425,7 +425,7 @@ ALTER TABLE llx_societe_extrafields ADD UNIQUE INDEX uk_societe_extrafields (fk_
|
||||
ALTER TABLE llx_don ADD COLUMN fk_country integer NOT NULL after country;
|
||||
ALTER TABLE llx_don CHANGE COLUMN fk_paiement fk_payment integer;
|
||||
ALTER TABLE llx_don ADD COLUMN paid smallint default 0 NOT NULL after fk_payment;
|
||||
ALTER TABLE llx_don CHANGE COLUMN fk_don_projet fk_project integer NULL;
|
||||
ALTER TABLE llx_don CHANGE COLUMN fk_don_projet fk_projet integer NULL;
|
||||
|
||||
create table llx_don_extrafields
|
||||
(
|
||||
|
||||
@ -33,11 +33,11 @@ CREATE TABLE llx_cronjob
|
||||
md5params varchar(32),
|
||||
module_name varchar(255),
|
||||
priority integer DEFAULT 0,
|
||||
datelastrun datetime,
|
||||
datenextrun datetime,
|
||||
datestart datetime,
|
||||
dateend datetime,
|
||||
datelastresult datetime,
|
||||
datelastrun datetime, -- date last run and when should be next
|
||||
datenextrun datetime, -- job will be run if current date higher that this date
|
||||
datestart datetime, -- before this date no jobs will be run
|
||||
dateend datetime, -- after this date, no more jobs will be run
|
||||
datelastresult datetime,
|
||||
lastresult text,
|
||||
lastoutput text,
|
||||
unitfrequency integer NOT NULL DEFAULT 0,
|
||||
|
||||
@ -27,8 +27,8 @@ create table llx_don
|
||||
entity integer DEFAULT 1 NOT NULL, -- multi company id
|
||||
tms timestamp,
|
||||
fk_statut smallint NOT NULL DEFAULT 0, -- Status of donation promise or validate
|
||||
datec datetime, -- date de creation de l'enregistrement
|
||||
datedon datetime, -- date du don/promesse
|
||||
datec datetime, -- Create date
|
||||
datedon datetime, -- Date of the donation/promise
|
||||
amount real DEFAULT 0,
|
||||
fk_payment integer,
|
||||
paid smallint default 0 NOT NULL,
|
||||
@ -44,7 +44,7 @@ create table llx_don
|
||||
phone varchar(24),
|
||||
phone_mobile varchar(24),
|
||||
public smallint DEFAULT 1 NOT NULL, -- Donation is public ? (0,1)
|
||||
fk_project integer NULL, -- Donation is given for a project ?
|
||||
fk_projet integer NULL, -- Donation is given for a project ?
|
||||
fk_user_author integer NOT NULL,
|
||||
fk_user_valid integer NULL,
|
||||
note_private text,
|
||||
|
||||
@ -389,6 +389,7 @@ ExtrafieldSeparator=Separator
|
||||
ExtrafieldCheckBox=Checkbox
|
||||
ExtrafieldRadio=Radio button
|
||||
ExtrafieldCheckBoxFromList= Checkbox from table
|
||||
ExtrafieldLink=Link to an object
|
||||
ExtrafieldParamHelpselect=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...<br><br>In order to have the list depending on another :<br>1,value1|parent_list_code:parent_key<br>2,value2|parent_list_code:parent_key
|
||||
ExtrafieldParamHelpcheckbox=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...
|
||||
ExtrafieldParamHelpradio=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...
|
||||
@ -494,6 +495,8 @@ Module500Name=Special expenses (tax, social contributions, dividends)
|
||||
Module500Desc=Management of special expenses like taxes, social contribution, dividends and salaries
|
||||
Module510Name=Salaries
|
||||
Module510Desc=Management of employees salaries and payments
|
||||
Module520Name=Loan
|
||||
Module520Desc=Management of loans
|
||||
Module600Name=الإخطارات
|
||||
Module600Desc=Send EMail notifications on some Dolibarr business events to third-party contacts (setup defined on each thirdparty)
|
||||
Module700Name=التبرعات
|
||||
@ -508,14 +511,14 @@ Module1400Name=المحاسبة
|
||||
Module1400Desc=المحاسبة الإدارية (ضعف الأحزاب)
|
||||
Module1520Name=Document Generation
|
||||
Module1520Desc=Mass mail document generation
|
||||
Module1780Name=الفئات
|
||||
Module1780Desc=الفئات إدارة المنتجات والموردين والزبائن)
|
||||
Module1780Name=Tags/Categories
|
||||
Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members)
|
||||
Module2000Name=Fckeditor
|
||||
Module2000Desc=سوغ محرر
|
||||
Module2200Name=Dynamic Prices
|
||||
Module2200Desc=Enable the usage of math expressions for prices
|
||||
Module2300Name=Cron
|
||||
Module2300Desc=Scheduled task management
|
||||
Module2300Desc=Scheduled job management
|
||||
Module2400Name=جدول الأعمال
|
||||
Module2400Desc=الأعمال / الإدارة المهام وجدول الأعمال
|
||||
Module2500Name=إدارة المحتوى الإلكتروني
|
||||
@ -714,6 +717,11 @@ Permission510=Read Salaries
|
||||
Permission512=Create/modify salaries
|
||||
Permission514=Delete salaries
|
||||
Permission517=Export salaries
|
||||
Permission520=Read Loans
|
||||
Permission522=Create/modify loans
|
||||
Permission524=Delete loans
|
||||
Permission525=Access loan calculator
|
||||
Permission527=Export loans
|
||||
Permission531=قراءة الخدمات
|
||||
Permission532=إنشاء / تعديل الخدمات
|
||||
Permission534=حذف خدمات
|
||||
@ -746,6 +754,7 @@ Permission1185=الموافقة على أوامر المورد
|
||||
Permission1186=من أجل المورد أوامر
|
||||
Permission1187=باستلام المورد أوامر
|
||||
Permission1188=وثيقة أوامر المورد
|
||||
Permission1190=Approve (second approval) supplier orders
|
||||
Permission1201=ونتيجة للحصول على التصدير
|
||||
Permission1202=إنشاء / تعديل للتصدير
|
||||
Permission1231=قراءة فواتير الموردين
|
||||
@ -758,10 +767,10 @@ Permission1237=Export supplier orders and their details
|
||||
Permission1251=ادارة الدمار الواردات الخارجية البيانات في قاعدة البيانات (بيانات تحميل)
|
||||
Permission1321=تصدير العملاء والفواتير والمدفوعات والصفات
|
||||
Permission1421=التصدير طلبات الزبائن وصفاته
|
||||
Permission23001 = Read Scheduled task
|
||||
Permission23002 = Create/update Scheduled task
|
||||
Permission23003 = Delete Scheduled task
|
||||
Permission23004 = Execute Scheduled task
|
||||
Permission23001=Read Scheduled job
|
||||
Permission23002=Create/update Scheduled job
|
||||
Permission23003=Delete Scheduled job
|
||||
Permission23004=Execute Scheduled job
|
||||
Permission2401=قراءة الأعمال (أو أحداث المهام) مرتبطة حسابه
|
||||
Permission2402=إنشاء / تعديل أو حذف الإجراءات (الأحداث أو المهام) مرتبطة حسابه
|
||||
Permission2403=قراءة الأعمال (أو أحداث المهام) آخرين
|
||||
@ -1107,7 +1116,7 @@ ModuleCompanyCodeAquarium=عودة رمز المحاسبة التي بناها:
|
||||
ModuleCompanyCodePanicum=العودة فارغة مدونة المحاسبة.
|
||||
ModuleCompanyCodeDigitaria=قانون المحاسبة طرف ثالث يعتمد على الرمز. الشفرة تتكون من طابع "جيم" في المركز الأول يليه 5 الحروف الأولى من طرف ثالث المدونة.
|
||||
UseNotifications=استخدام الإخطارات
|
||||
NotificationsDesc=EMails notifications feature allows you to silently send automatic mail, for some Dolibarr events. Targets of notifications can be defined:<br>* per third parties contacts (customers or suppliers), one third party at time.<br>* or by setting a global target email address on module setup page.
|
||||
NotificationsDesc=EMails notifications feature allows you to silently send automatic mail, for some Dolibarr events. Targets of notifications can be defined:<br>* per third parties contacts (customers or suppliers), one contact at time.<br>* or by setting global target email addresses in module setup page.
|
||||
ModelModules=وثائق قوالب
|
||||
DocumentModelOdt=Generate documents from OpenDocuments templates (.ODT or .ODS files for OpenOffice, KOffice, TextEdit,...)
|
||||
WatermarkOnDraft=علامة مائية على مشروع الوثيقة
|
||||
@ -1557,6 +1566,7 @@ SuppliersSetup=المورد الإعداد وحدة
|
||||
SuppliersCommandModel=قالب كاملة من أجل المورد (logo...)
|
||||
SuppliersInvoiceModel=كاملة قالب من فاتورة المورد (logo. ..)
|
||||
SuppliersInvoiceNumberingModel=Supplier invoices numbering models
|
||||
IfSetToYesDontForgetPermission=If set to yes, don't forget to provide permissions to groups or users allowed for the second approval
|
||||
##### GeoIPMaxmind #####
|
||||
GeoIPMaxmindSetup=GeoIP Maxmind الإعداد وحدة
|
||||
PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.<br>Examples:<br>/usr/local/share/GeoIP/GeoIP.dat<br>/usr/share/GeoIP/GeoIP.dat
|
||||
@ -1601,3 +1611,8 @@ ExpenseReportsSetup=Setup of module Expense Reports
|
||||
TemplatePDFExpenseReports=Document templates to generate expense report document
|
||||
NoModueToManageStockDecrease=No module able to manage automatic stock decrease has been activated. Stock decrease will be done on manual input only.
|
||||
NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only.
|
||||
YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for EMail notifications by enabling and configuring the module "Notification".
|
||||
ListOfNotificationsPerContact=List of notifications per contact*
|
||||
ListOfFixedNotifications=List of fixed notifications
|
||||
GoOntoContactCardToAddMore=Go on the tab "Notifications" of a thirdparty contact to add or remove notifications for contacts/addresses
|
||||
Threshold=Threshold
|
||||
|
||||
@ -48,7 +48,10 @@ InvoiceValidatedInDolibarr=تم توثيق %s من الفاتورة
|
||||
InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS
|
||||
InvoiceBackToDraftInDolibarr=الفاتورة %s للذهاب بها إلى حالة المسودة
|
||||
InvoiceDeleteDolibarr=تم حذف %s من الفاتورة
|
||||
OrderValidatedInDolibarr= تم توثيق %s من الطلب
|
||||
OrderValidatedInDolibarr=تم توثيق %s من الطلب
|
||||
OrderDeliveredInDolibarr=Order %s classified delivered
|
||||
OrderCanceledInDolibarr=تم إلغاء %s من الطلب
|
||||
OrderBilledInDolibarr=Order %s classified billed
|
||||
OrderApprovedInDolibarr=تم الموافقة على %s من الطلب
|
||||
OrderRefusedInDolibarr=Order %s refused
|
||||
OrderBackToDraftInDolibarr=الطلب %s للذهاب بها إلى حالة المسودة
|
||||
@ -91,3 +94,5 @@ WorkingTimeRange=Working time range
|
||||
WorkingDaysRange=Working days range
|
||||
AddEvent=Create event
|
||||
MyAvailability=My availability
|
||||
ActionType=Event type
|
||||
DateActionBegin=Start event date
|
||||
|
||||
@ -294,6 +294,8 @@ TotalOfTwoDiscountMustEqualsOriginal=مجموعه جديدتين الخصم يج
|
||||
ConfirmRemoveDiscount=هل أنت متأكد من أنك تريد إزالة هذا الخصم؟
|
||||
RelatedBill=الفاتورة ذات الصلة
|
||||
RelatedBills=الفواتير ذات الصلة
|
||||
RelatedCustomerInvoices=Related customer invoices
|
||||
RelatedSupplierInvoices=Related supplier invoices
|
||||
LatestRelatedBill=Latest related invoice
|
||||
WarningBillExist=Warning, one or more invoice already exist
|
||||
|
||||
|
||||
@ -1,64 +1,62 @@
|
||||
# Dolibarr language file - Source file is en_US - categories
|
||||
Category=الفئة
|
||||
Categories=الفئات
|
||||
Rubrique=الفئة
|
||||
Rubriques=الفئات
|
||||
categories=الفئات
|
||||
TheCategorie=فئة
|
||||
NoCategoryYet=أي فئة من هذا النوع التي أنشئت
|
||||
Rubrique=Tag/Category
|
||||
Rubriques=Tags/Categories
|
||||
categories=tags/categories
|
||||
TheCategorie=The tag/category
|
||||
NoCategoryYet=No tag/category of this type created
|
||||
In=في
|
||||
AddIn=أضيف في
|
||||
modify=تعديل
|
||||
Classify=تصنيف
|
||||
CategoriesArea=منطقة الفئات
|
||||
ProductsCategoriesArea=منتجات / خدمات الفئات المنطقة
|
||||
SuppliersCategoriesArea=الموردين منطقة الفئات
|
||||
CustomersCategoriesArea=العملاء منطقة الفئات
|
||||
ThirdPartyCategoriesArea=أطراف ثالثة 'منطقة الفئات
|
||||
MembersCategoriesArea=منطقة فئات الأعضاء
|
||||
ContactsCategoriesArea=Contacts categories area
|
||||
MainCats=الفئات الرئيسية
|
||||
CategoriesArea=Tags/Categories area
|
||||
ProductsCategoriesArea=Products/Services tags/categories area
|
||||
SuppliersCategoriesArea=Suppliers tags/categories area
|
||||
CustomersCategoriesArea=Customers tags/categories area
|
||||
ThirdPartyCategoriesArea=Third parties tags/categories area
|
||||
MembersCategoriesArea=Members tags/categories area
|
||||
ContactsCategoriesArea=Contacts tags/categories area
|
||||
MainCats=Main tags/categories
|
||||
SubCats=الفئات الفرعية
|
||||
CatStatistics=إحصائيات
|
||||
CatList=قائمة الفئات
|
||||
AllCats=جميع الفئات
|
||||
ViewCat=عرض الفئة
|
||||
NewCat=إضافة فئة
|
||||
NewCategory=فئة جديدة
|
||||
ModifCat=تعديل الفئة
|
||||
CatCreated=تم إنشاء الفئة
|
||||
CreateCat=إنشاء فئة
|
||||
CreateThisCat=إنشاء هذه الفئة
|
||||
CatList=List of tags/categories
|
||||
AllCats=All tags/categories
|
||||
ViewCat=View tag/category
|
||||
NewCat=Add tag/category
|
||||
NewCategory=New tag/category
|
||||
ModifCat=Modify tag/category
|
||||
CatCreated=Tag/category created
|
||||
CreateCat=Create tag/category
|
||||
CreateThisCat=Create this tag/category
|
||||
ValidateFields=صحة المجالات
|
||||
NoSubCat=لا فرعية.
|
||||
SubCatOf=فرعية
|
||||
FoundCats=العثور على الفئات
|
||||
FoundCatsForName=فئات إيجاد اسم :
|
||||
FoundSubCatsIn=فرعية موجودة في الفئة
|
||||
ErrSameCatSelected=كنت قد اخترت نفس الفئة عدة مرات
|
||||
ErrForgotCat=نسيت اختيار الفئة
|
||||
FoundCats=Found tags/categories
|
||||
FoundCatsForName=Tags/categories found for the name :
|
||||
FoundSubCatsIn=Subcategories found in the tag/category
|
||||
ErrSameCatSelected=You selected the same tag/category several times
|
||||
ErrForgotCat=You forgot to choose the tag/category
|
||||
ErrForgotField=نسيت أن أبلغ المجالات
|
||||
ErrCatAlreadyExists=هذا الاسم مستخدم بالفعل
|
||||
AddProductToCat=إضافة هذا المنتج إلى الفئة؟
|
||||
ImpossibleAddCat=من المستحيل أن تضيف فئة
|
||||
ImpossibleAssociateCategory=من المستحيل المنتسبين لهذه الفئة
|
||||
AddProductToCat=Add this product to a tag/category?
|
||||
ImpossibleAddCat=Impossible to add the tag/category
|
||||
ImpossibleAssociateCategory=Impossible to associate the tag/category to
|
||||
WasAddedSuccessfully=<b>ق ٪</b> أضيفت بنجاح.
|
||||
ObjectAlreadyLinkedToCategory=العنصر المرتبط بالفعل في هذه الفئة.
|
||||
CategorySuccessfullyCreated=ق ٪ من هذه الفئة تم اضافة بالنجاح.
|
||||
ProductIsInCategories=المنتجات / الخدمات وتملك على الفئات التالية
|
||||
SupplierIsInCategories=لطرف ثالث يملك الموردين الفئات التالية
|
||||
CompanyIsInCustomersCategories=هذا الطرف الثالث وتملك ليلي العملاء / آفاق الفئات
|
||||
CompanyIsInSuppliersCategories=ويملك هذا الطرف الثالث على الفئات التالية الموردين
|
||||
MemberIsInCategories=يملك هذا العضو إلى الفئات التالية الأعضاء
|
||||
ContactIsInCategories=This contact owns to following contacts categories
|
||||
ProductHasNoCategory=هذا المنتج / الخدمة وليس في أي فئات
|
||||
SupplierHasNoCategory=هذا المورد ليست في أي فئات
|
||||
CompanyHasNoCategory=هذه الشركة ليست في أي فئات
|
||||
MemberHasNoCategory=هذا العضو غير موجود في أي فئات
|
||||
ContactHasNoCategory=This contact is not in any categories
|
||||
ClassifyInCategory=تصنف في الفئة
|
||||
ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category.
|
||||
CategorySuccessfullyCreated=This tag/category %s has been added with success.
|
||||
ProductIsInCategories=Product/service owns to following tags/categories
|
||||
SupplierIsInCategories=Third party owns to following suppliers tags/categories
|
||||
CompanyIsInCustomersCategories=This third party owns to following customers/prospects tags/categories
|
||||
CompanyIsInSuppliersCategories=This third party owns to following suppliers tags/categories
|
||||
MemberIsInCategories=This member owns to following members tags/categories
|
||||
ContactIsInCategories=This contact owns to following contacts tags/categories
|
||||
ProductHasNoCategory=This product/service is not in any tags/categories
|
||||
SupplierHasNoCategory=This supplier is not in any tags/categories
|
||||
CompanyHasNoCategory=This company is not in any tags/categories
|
||||
MemberHasNoCategory=This member is not in any tags/categories
|
||||
ContactHasNoCategory=This contact is not in any tags/categories
|
||||
ClassifyInCategory=Classify in tag/category
|
||||
NoneCategory=بلا
|
||||
NotCategorized=Without category
|
||||
NotCategorized=Without tag/category
|
||||
CategoryExistsAtSameLevel=هذه الفئة موجودة بالفعل في نفس المكان
|
||||
ReturnInProduct=عودة إلى المنتجات / الخدمات بطاقة
|
||||
ReturnInSupplier=عودة الى مورد بطاقة
|
||||
@ -66,22 +64,22 @@ ReturnInCompany=عودة الى الزبون / احتمال بطاقة
|
||||
ContentsVisibleByAll=محتويات سوف تكون واضحة من جانب جميع
|
||||
ContentsVisibleByAllShort=محتويات مرئية من قبل جميع
|
||||
ContentsNotVisibleByAllShort=محتويات غير مرئي من قبل جميع
|
||||
CategoriesTree=Categories tree
|
||||
DeleteCategory=حذف فئة
|
||||
ConfirmDeleteCategory=هل أنت متأكد من أنك تريد حذف هذه الفئة؟
|
||||
RemoveFromCategory=إزالة الارتباط مع catégorie
|
||||
RemoveFromCategoryConfirm=هل أنت متأكد من أنك تريد إزالة الربط بين الصفقة والفئة؟
|
||||
NoCategoriesDefined=أي فئة محددة
|
||||
SuppliersCategoryShort=فئة الموردين
|
||||
CustomersCategoryShort=فئة الزبائن
|
||||
ProductsCategoryShort=فئة المنتجات
|
||||
MembersCategoryShort=أعضاء الفئة
|
||||
SuppliersCategoriesShort=فئات الموردين
|
||||
CustomersCategoriesShort=فئات العملاء
|
||||
CategoriesTree=Tags/categories tree
|
||||
DeleteCategory=Delete tag/category
|
||||
ConfirmDeleteCategory=Are you sure you want to delete this tag/category ?
|
||||
RemoveFromCategory=Remove link with tag/categorie
|
||||
RemoveFromCategoryConfirm=Are you sure you want to remove link between the transaction and the tag/category ?
|
||||
NoCategoriesDefined=No tag/category defined
|
||||
SuppliersCategoryShort=Suppliers tags/category
|
||||
CustomersCategoryShort=Customers tags/category
|
||||
ProductsCategoryShort=Products tags/category
|
||||
MembersCategoryShort=Members tags/category
|
||||
SuppliersCategoriesShort=Suppliers tags/categories
|
||||
CustomersCategoriesShort=Customers tags/categories
|
||||
CustomersProspectsCategoriesShort=Custo. / Prosp. الفئات
|
||||
ProductsCategoriesShort=فئات المنتجات
|
||||
MembersCategoriesShort=أعضاء الفئات
|
||||
ContactCategoriesShort=Contacts categories
|
||||
ProductsCategoriesShort=Products tags/categories
|
||||
MembersCategoriesShort=Members tags/categories
|
||||
ContactCategoriesShort=Contacts tags/categories
|
||||
ThisCategoryHasNoProduct=هذه الفئة لا تحتوي على أي منتج.
|
||||
ThisCategoryHasNoSupplier=هذه الفئة لا تحتوي على أي مورد.
|
||||
ThisCategoryHasNoCustomer=هذه الفئة لا تحتوي على أي عميل.
|
||||
@ -90,23 +88,23 @@ ThisCategoryHasNoContact=This category does not contain any contact.
|
||||
AssignedToCustomer=المخصصة للعميل
|
||||
AssignedToTheCustomer=يكلف العميل
|
||||
InternalCategory=فئة Inernal
|
||||
CategoryContents=محتويات هذه الفئة
|
||||
CategId=معرف الفئة
|
||||
CatSupList=قائمة الموردين الفئات
|
||||
CatCusList=قائمة العملاء / احتمال الفئات
|
||||
CatProdList=قائمة المنتجات فئات
|
||||
CatMemberList=قائمة بأسماء أعضاء الفئات
|
||||
CatContactList=List of contact categories and contact
|
||||
CatSupLinks=Links between suppliers and categories
|
||||
CatCusLinks=Links between customers/prospects and categories
|
||||
CatProdLinks=Links between products/services and categories
|
||||
CatMemberLinks=Links between members and categories
|
||||
DeleteFromCat=Remove from category
|
||||
CategoryContents=Tag/category contents
|
||||
CategId=Tag/category id
|
||||
CatSupList=List of supplier tags/categories
|
||||
CatCusList=List of customer/prospect tags/categories
|
||||
CatProdList=List of products tags/categories
|
||||
CatMemberList=List of members tags/categories
|
||||
CatContactList=List of contact tags/categories and contact
|
||||
CatSupLinks=Links between suppliers and tags/categories
|
||||
CatCusLinks=Links between customers/prospects and tags/categories
|
||||
CatProdLinks=Links between products/services and tags/categories
|
||||
CatMemberLinks=Links between members and tags/categories
|
||||
DeleteFromCat=Remove from tags/category
|
||||
DeletePicture=Picture delete
|
||||
ConfirmDeletePicture=Confirm picture deletion?
|
||||
ExtraFieldsCategories=Complementary attributes
|
||||
CategoriesSetup=Categories setup
|
||||
CategorieRecursiv=Link with parent category automatically
|
||||
CategoriesSetup=Tags/categories setup
|
||||
CategorieRecursiv=Link with parent tag/category automatically
|
||||
CategorieRecursivHelp=If activated, product will also linked to parent category when adding into a subcategory
|
||||
AddProductServiceIntoCategory=Add the following product/service
|
||||
ShowCategory=Show category
|
||||
ShowCategory=Show tag/category
|
||||
|
||||
@ -26,15 +26,15 @@ CronLastOutput=Last run output
|
||||
CronLastResult=Last result code
|
||||
CronListOfCronJobs=List of scheduled jobs
|
||||
CronCommand=Command
|
||||
CronList=Jobs list
|
||||
CronDelete= Delete cron jobs
|
||||
CronConfirmDelete= Are you sure you want to delete this cron job ?
|
||||
CronExecute=Launch job
|
||||
CronConfirmExecute= Are you sure to execute this job now
|
||||
CronInfo= Jobs allow to execute task that have been planned
|
||||
CronWaitingJobs=Wainting jobs
|
||||
CronList=Scheduled job
|
||||
CronDelete=Delete scheduled jobs
|
||||
CronConfirmDelete=Are you sure you want to delete this scheduled jobs ?
|
||||
CronExecute=Launch scheduled jobs
|
||||
CronConfirmExecute=Are you sure to execute this scheduled jobs now ?
|
||||
CronInfo=Scheduled job module allow to execute job that have been planned
|
||||
CronWaitingJobs=Waiting jobs
|
||||
CronTask=Job
|
||||
CronNone= بلا
|
||||
CronNone=بلا
|
||||
CronDtStart=تاريخ البدء
|
||||
CronDtEnd=نهاية التاريخ
|
||||
CronDtNextLaunch=Next execution
|
||||
@ -75,6 +75,7 @@ CronObjectHelp=The object name to load. <BR> For exemple to fetch method of Doli
|
||||
CronMethodHelp=The object method to launch. <BR> For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of method is is <i>fecth</i>
|
||||
CronArgsHelp=The method arguments. <BR> For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of paramters can be <i>0, ProductRef</i>
|
||||
CronCommandHelp=The system command line to execute.
|
||||
CronCreateJob=Create new Scheduled Job
|
||||
# Info
|
||||
CronInfoPage=Information
|
||||
# Common
|
||||
|
||||
@ -6,6 +6,8 @@ Donor=الجهات المانحة
|
||||
Donors=الجهات المانحة
|
||||
AddDonation=Create a donation
|
||||
NewDonation=منحة جديدة
|
||||
DeleteADonation=Delete a donation
|
||||
ConfirmDeleteADonation=Are you sure you want to delete this donation ?
|
||||
ShowDonation=Show donation
|
||||
DonationPromise=هدية الوعد
|
||||
PromisesNotValid=وعود لم يصادق
|
||||
@ -21,6 +23,8 @@ DonationStatusPaid=تلقى تبرع
|
||||
DonationStatusPromiseNotValidatedShort=مسودة
|
||||
DonationStatusPromiseValidatedShort=صادق
|
||||
DonationStatusPaidShort=وردت
|
||||
DonationTitle=Donation receipt
|
||||
DonationDatePayment=Payment date
|
||||
ValidPromess=التحقق من صحة الوعد
|
||||
DonationReceipt=Donation receipt
|
||||
BuildDonationReceipt=بناء استلام
|
||||
@ -36,3 +40,4 @@ FrenchOptions=Options for France
|
||||
DONATION_ART200=Show article 200 from CGI if you are concerned
|
||||
DONATION_ART238=Show article 238 from CGI if you are concerned
|
||||
DONATION_ART885=Show article 885 from CGI if you are concerned
|
||||
DonationPayment=Donation payment
|
||||
|
||||
@ -161,6 +161,12 @@ ErrorPriceExpressionUnknown=Unknown error '%s'
|
||||
ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs
|
||||
ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without batch/serial information, on a product requiring batch/serial information
|
||||
ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified before being allowed to do this action
|
||||
ErrorGlobalVariableUpdater0=HTTP request failed with error '%s'
|
||||
ErrorGlobalVariableUpdater1=Invalid JSON format '%s'
|
||||
ErrorGlobalVariableUpdater2=Missing parameter '%s'
|
||||
ErrorGlobalVariableUpdater3=The requested data was not found in result
|
||||
ErrorGlobalVariableUpdater4=SOAP client failed with error '%s'
|
||||
ErrorGlobalVariableUpdater5=No global variable selected
|
||||
|
||||
# Warnings
|
||||
WarningMandatorySetupNotComplete=Mandatory setup parameters are not yet defined
|
||||
|
||||
53
htdocs/langs/ar_SA/loan.lang
Normal file
53
htdocs/langs/ar_SA/loan.lang
Normal file
@ -0,0 +1,53 @@
|
||||
# Dolibarr language file - Source file is en_US - loan
|
||||
Loan=Loan
|
||||
Loans=Loans
|
||||
NewLoan=New Loan
|
||||
ShowLoan=Show Loan
|
||||
PaymentLoan=Loan payment
|
||||
ShowLoanPayment=Show Loan Payment
|
||||
Capital=Capital
|
||||
Insurance=Insurance
|
||||
Interest=Interest
|
||||
Nbterms=Number of terms
|
||||
LoanAccountancyCapitalCode=Accountancy code capital
|
||||
LoanAccountancyInsuranceCode=Accountancy code insurance
|
||||
LoanAccountancyInterestCode=Accountancy code interest
|
||||
LoanPayment=Loan payment
|
||||
ConfirmDeleteLoan=Confirm deleting this loan
|
||||
LoanDeleted=Loan Deleted Successfully
|
||||
ConfirmPayLoan=Confirm classify paid this loan
|
||||
LoanPaid=Loan Paid
|
||||
ErrorLoanCapital=Loan amount has to be numeric and greater than zero.
|
||||
ErrorLoanLength=Loan length has to be numeric and greater than zero.
|
||||
ErrorLoanInterest=Annual interest has to be numeric and greater than zero.
|
||||
# Calc
|
||||
LoanCalc=Bank Loans Calculator
|
||||
PurchaseFinanceInfo=Purchase & Financing Information
|
||||
SalePriceOfAsset=Sale Price of Asset
|
||||
PercentageDown=Percentage Down
|
||||
LengthOfMortgage=Length of Mortgage
|
||||
AnnualInterestRate=Annual Interest Rate
|
||||
ExplainCalculations=Explain Calculations
|
||||
ShowMeCalculationsAndAmortization=Show me the calculations and amortization
|
||||
MortgagePaymentInformation=Mortgage Payment Information
|
||||
DownPayment=Down Payment
|
||||
DownPaymentDesc=The <b>down payment</b> = The price of the home multiplied by the percentage down divided by 100 (for 5% down becomes 5/100 or 0.05)
|
||||
InterestRateDesc=The <b>interest rate</b> = The annual interest percentage divided by 100
|
||||
MonthlyFactorDesc=The <b>monthly factor</b> = The result of the following formula
|
||||
MonthlyInterestRateDesc=The <b>monthly interest rate</b> = The annual interest rate divided by 12 (for the 12 months in a year)
|
||||
MonthTermDesc=The <b>month term</b> of the loan in months = The number of years you've taken the loan out for times 12
|
||||
MonthlyPaymentDesc=The montly payment is figured out using the following formula
|
||||
AmortizationPaymentDesc=The <a href="#amortization">amortization</a> breaks down how much of your monthly payment goes towards the bank's interest, and how much goes into paying off the principal of your loan.
|
||||
AmountFinanced=Amount Financed
|
||||
AmortizationMonthlyPaymentOverYears=Amortization For Monthly Payment: <b>%s</b> over %s years
|
||||
Totalsforyear=Totals for year
|
||||
MonthlyPayment=Monthly Payment
|
||||
LoanCalcDesc=This <b>mortgage calculator</b> can be used to figure out monthly payments of a home mortgage loan, based on the home's sale price, the term of the loan desired, buyer's down payment percentage, and the loan's interest rate.<br> This calculator factors in PMI (Private Mortgage Insurance) for loans where less than 20% is put as a down payment. Also taken into consideration are the town property taxes, and their effect on the total monthly mortgage payment.<br>
|
||||
GoToInterest=%s will go towards INTEREST
|
||||
GoToPrincipal=%s will go towards PRINCIPAL
|
||||
YouWillSpend=You will spend %s on your house in year %s
|
||||
# Admin
|
||||
ConfigLoan=Configuration of the module loan
|
||||
LOAN_ACCOUNTING_ACCOUNT_CAPITAL=Accountancy code capital by default
|
||||
LOAN_ACCOUNTING_ACCOUNT_INTEREST=Accountancy code interest by default
|
||||
LOAN_ACCOUNTING_ACCOUNT_INSURANCE=Accountancy code insurance by default
|
||||
@ -139,3 +139,5 @@ ListOfNotificationsDone=أرسلت قائمة جميع اشعارات بالبر
|
||||
MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing.
|
||||
MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter <strong>'%s'</strong> to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature.
|
||||
MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s.
|
||||
YouCanAlsoUseSupervisorKeyword=You can also add the keyword <strong>__SUPERVISOREMAIL__</strong> to have email being sent to the supervisor of user (works only if an email is defined for this supervisor)
|
||||
NbOfTargetedContacts=Current number of targeted contact emails
|
||||
|
||||
@ -352,6 +352,7 @@ Status=حالة
|
||||
Favorite=Favorite
|
||||
ShortInfo=Info.
|
||||
Ref=المرجع.
|
||||
ExternalRef=Ref. extern
|
||||
RefSupplier=المرجع. المورد
|
||||
RefPayment=المرجع. الدفع
|
||||
CommercialProposalsShort=مقترحات تجارية
|
||||
@ -394,8 +395,8 @@ Available=متاح
|
||||
NotYetAvailable=لم تتوفر بعد
|
||||
NotAvailable=غير متاحة
|
||||
Popularity=شعبية
|
||||
Categories=الفئات
|
||||
Category=الفئة
|
||||
Categories=Tags/categories
|
||||
Category=Tag/category
|
||||
By=بواسطة
|
||||
From=من
|
||||
to=إلى
|
||||
@ -694,6 +695,7 @@ AddBox=Add box
|
||||
SelectElementAndClickRefresh=Select an element and click Refresh
|
||||
PrintFile=Print File %s
|
||||
ShowTransaction=Show transaction
|
||||
GoIntoSetupToChangeLogo=Go into Home - Setup - Company to change logo or go into Home - Setup - Display to hide.
|
||||
# Week day
|
||||
Monday=يوم الاثنين
|
||||
Tuesday=الثلاثاء
|
||||
|
||||
@ -64,7 +64,8 @@ ShipProduct=سفينة المنتج
|
||||
Discount=الخصم
|
||||
CreateOrder=خلق أمر
|
||||
RefuseOrder=رفض النظام
|
||||
ApproveOrder=قبول النظام
|
||||
ApproveOrder=Approve order
|
||||
Approve2Order=Approve order (second level)
|
||||
ValidateOrder=من أجل التحقق من صحة
|
||||
UnvalidateOrder=Unvalidate النظام
|
||||
DeleteOrder=من أجل حذف
|
||||
@ -102,6 +103,8 @@ ClassifyBilled=تصنيف "فواتير"
|
||||
ComptaCard=بطاقة المحاسبة
|
||||
DraftOrders=مشروع أوامر
|
||||
RelatedOrders=الأوامر ذات الصلة
|
||||
RelatedCustomerOrders=Related customer orders
|
||||
RelatedSupplierOrders=Related supplier orders
|
||||
OnProcessOrders=على عملية أوامر
|
||||
RefOrder=المرجع. ترتيب
|
||||
RefCustomerOrder=المرجع. عملاء النظام
|
||||
@ -118,6 +121,7 @@ PaymentOrderRef=من أجل دفع ق ٪
|
||||
CloneOrder=استنساخ النظام
|
||||
ConfirmCloneOrder=هل أنت متأكد من أن هذا الأمر استنساخ <b>٪ ق؟</b>
|
||||
DispatchSupplierOrder=%s استقبال النظام مورد
|
||||
FirstApprovalAlreadyDone=First approval already done
|
||||
##### Types de contacts #####
|
||||
TypeContact_commande_internal_SALESREPFOLL=ممثل العميل متابعة النظام
|
||||
TypeContact_commande_internal_SHIPPING=ممثل الشحن متابعة
|
||||
|
||||
@ -12,6 +12,7 @@ Notify_FICHINTER_VALIDATE=تدخل المصادق
|
||||
Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail
|
||||
Notify_BILL_VALIDATE=فاتورة مصادق
|
||||
Notify_BILL_UNVALIDATE=Customer invoice unvalidated
|
||||
Notify_ORDER_SUPPLIER_VALIDATE=Supplier order recorded
|
||||
Notify_ORDER_SUPPLIER_APPROVE=من أجل الموافقة على المورد
|
||||
Notify_ORDER_SUPPLIER_REFUSE=من أجل رفض الموردين
|
||||
Notify_ORDER_VALIDATE=التحقق من صحة النظام العميل
|
||||
@ -28,7 +29,7 @@ Notify_PROPAL_SENTBYMAIL=اقتراح التجارية المرسلة عن طر
|
||||
Notify_BILL_PAYED=دفعت فاتورة العميل
|
||||
Notify_BILL_CANCEL=فاتورة الزبون إلغاء
|
||||
Notify_BILL_SENTBYMAIL=فاتورة الزبون إرسالها عن طريق البريد
|
||||
Notify_ORDER_SUPPLIER_VALIDATE=أجل التحقق من صحة المورد
|
||||
Notify_ORDER_SUPPLIER_VALIDATE=Supplier order recorded
|
||||
Notify_ORDER_SUPPLIER_SENTBYMAIL=النظام مزود ترسل عن طريق البريد
|
||||
Notify_BILL_SUPPLIER_VALIDATE=فاتورة المورد المصادق
|
||||
Notify_BILL_SUPPLIER_PAYED=دفعت فاتورة المورد
|
||||
@ -47,7 +48,7 @@ Notify_PROJECT_CREATE=Project creation
|
||||
Notify_TASK_CREATE=Task created
|
||||
Notify_TASK_MODIFY=Task modified
|
||||
Notify_TASK_DELETE=Task deleted
|
||||
SeeModuleSetup=See module setup
|
||||
SeeModuleSetup=See setup of module %s
|
||||
NbOfAttachedFiles=عدد الملفات المرفقة / وثائق
|
||||
TotalSizeOfAttachedFiles=اجمالى حجم الملفات المرفقة / وثائق
|
||||
MaxSize=الحجم الأقصى
|
||||
@ -170,6 +171,7 @@ EMailTextInvoiceValidated=فاتورة ٪ ق المصادق
|
||||
EMailTextProposalValidated=وقد تم اقتراح %s التحقق من صحة.
|
||||
EMailTextOrderValidated=وقد تم التحقق من صحة %s النظام.
|
||||
EMailTextOrderApproved=من أجل الموافقة على ق ٪
|
||||
EMailTextOrderValidatedBy=The order %s has been recorded by %s.
|
||||
EMailTextOrderApprovedBy=من أجل ٪ ق ق ٪ وافقت عليها
|
||||
EMailTextOrderRefused=من أجل رفض ق ٪
|
||||
EMailTextOrderRefusedBy=من أجل أن ترفض ٪ ق ق ٪
|
||||
|
||||
@ -245,12 +245,25 @@ MinimumRecommendedPrice=Minimum recommended price is : %s
|
||||
PriceExpressionEditor=Price expression editor
|
||||
PriceExpressionSelected=Selected price expression
|
||||
PriceExpressionEditorHelp1="price = 2 + 2" or "2 + 2" for setting the price. Use ; to separate expressions
|
||||
PriceExpressionEditorHelp2=You can access ExtraFields with variables like <b>#options_myextrafieldkey#</b>
|
||||
PriceExpressionEditorHelp2=You can access ExtraFields with variables like <b>#extrafield_myextrafieldkey#</b> and global variables with <b>#global_mycode#</b>
|
||||
PriceExpressionEditorHelp3=In both product/service and supplier prices there are these variables available:<br><b>#tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min#</b>
|
||||
PriceExpressionEditorHelp4=In product/service price only: <b>#supplier_min_price#</b><br>In supplier prices only: <b>#supplier_quantity# and #supplier_tva_tx#</b>
|
||||
PriceExpressionEditorHelp5=Available global values:
|
||||
PriceMode=Price mode
|
||||
PriceNumeric=Number
|
||||
DefaultPrice=Default price
|
||||
ComposedProductIncDecStock=Increase/Decrease stock on parent change
|
||||
ComposedProduct=Sub-product
|
||||
MinSupplierPrice=Minimun supplier price
|
||||
MinSupplierPrice=Minimum supplier price
|
||||
DynamicPriceConfiguration=Dynamic price configuration
|
||||
GlobalVariables=Global variables
|
||||
GlobalVariableUpdaters=Global variable updaters
|
||||
GlobalVariableUpdaterType0=JSON data
|
||||
GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value,
|
||||
GlobalVariableUpdaterHelpFormat0=format is {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"}
|
||||
GlobalVariableUpdaterType1=WebService data
|
||||
GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method
|
||||
GlobalVariableUpdaterHelpFormat1=format is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data, "to": "send"}}
|
||||
UpdateInterval=Update interval (minutes)
|
||||
LastUpdated=Last updated
|
||||
CorrectlyUpdated=Correctly updated
|
||||
|
||||
@ -72,6 +72,7 @@ ListSupplierInvoicesAssociatedProject=قائمة الموردين المرتبط
|
||||
ListContractAssociatedProject=قائمة العقود المرتبطة بالمشروع.
|
||||
ListFichinterAssociatedProject=قائمة التدخلات المرتبطة بالمشروع
|
||||
ListExpenseReportsAssociatedProject=List of expense reports associated with the project
|
||||
ListDonationsAssociatedProject=List of donations associated with the project
|
||||
ListActionsAssociatedProject=قائمة الإجراءات المرتبطة بالمشروع
|
||||
ActivityOnProjectThisWeek=نشاط المشروع هذا الاسبوع
|
||||
ActivityOnProjectThisMonth=نشاط المشروع هذا الشهر
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
RefSending=المرجع. إرسال
|
||||
Sending=إرسال
|
||||
Sendings=الإرسال
|
||||
AllSendings=All Shipments
|
||||
Shipment=إرسال
|
||||
Shipments=شحنات
|
||||
ShowSending=Show Sending
|
||||
|
||||
@ -43,3 +43,4 @@ ListOfSupplierOrders=List of supplier orders
|
||||
MenuOrdersSupplierToBill=Supplier orders to invoice
|
||||
NbDaysToDelivery=Delivery delay in days
|
||||
DescNbDaysToDelivery=The biggest delay is display among order product list
|
||||
UseDoubleApproval=Use double approval (the second approval will be any user of a defined user group)
|
||||
|
||||
@ -389,6 +389,7 @@ ExtrafieldSeparator=Разделител
|
||||
ExtrafieldCheckBox=Отметка
|
||||
ExtrafieldRadio=Радио бутон
|
||||
ExtrafieldCheckBoxFromList= Checkbox from table
|
||||
ExtrafieldLink=Link to an object
|
||||
ExtrafieldParamHelpselect=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...<br><br>In order to have the list depending on another :<br>1,value1|parent_list_code:parent_key<br>2,value2|parent_list_code:parent_key
|
||||
ExtrafieldParamHelpcheckbox=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...
|
||||
ExtrafieldParamHelpradio=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...
|
||||
@ -494,6 +495,8 @@ Module500Name=Special expenses (tax, social contributions, dividends)
|
||||
Module500Desc=Management of special expenses like taxes, social contribution, dividends and salaries
|
||||
Module510Name=Salaries
|
||||
Module510Desc=Management of employees salaries and payments
|
||||
Module520Name=Loan
|
||||
Module520Desc=Management of loans
|
||||
Module600Name=Известия
|
||||
Module600Desc=Send EMail notifications on some Dolibarr business events to third-party contacts (setup defined on each thirdparty)
|
||||
Module700Name=Дарения
|
||||
@ -508,14 +511,14 @@ Module1400Name=Счетоводство
|
||||
Module1400Desc=Управление на счетоводство (двойни страни)
|
||||
Module1520Name=Document Generation
|
||||
Module1520Desc=Mass mail document generation
|
||||
Module1780Name=Категории
|
||||
Module1780Desc=Управление на категории (продукти, доставчици и клиенти)
|
||||
Module1780Name=Tags/Categories
|
||||
Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members)
|
||||
Module2000Name=WYSIWYG редактор
|
||||
Module2000Desc=Оставя се да редактирате някакъв текст, чрез използване на усъвършенствана редактор
|
||||
Module2200Name=Dynamic Prices
|
||||
Module2200Desc=Enable the usage of math expressions for prices
|
||||
Module2300Name=Cron
|
||||
Module2300Desc=Scheduled task management
|
||||
Module2300Desc=Scheduled job management
|
||||
Module2400Name=Дневен ред
|
||||
Module2400Desc=Събития/задачи и управление на дневен ред
|
||||
Module2500Name=Електронно Управление на Съдържанието
|
||||
@ -714,6 +717,11 @@ Permission510=Read Salaries
|
||||
Permission512=Create/modify salaries
|
||||
Permission514=Delete salaries
|
||||
Permission517=Export salaries
|
||||
Permission520=Read Loans
|
||||
Permission522=Create/modify loans
|
||||
Permission524=Delete loans
|
||||
Permission525=Access loan calculator
|
||||
Permission527=Export loans
|
||||
Permission531=Прочети услуги
|
||||
Permission532=Създаване / промяна услуги
|
||||
Permission534=Изтриване на услуги
|
||||
@ -746,6 +754,7 @@ Permission1185=Одобряване на доставчика поръчки
|
||||
Permission1186=Поръчка доставчика поръчки
|
||||
Permission1187=Потвърдя получаването на доставчика поръчки
|
||||
Permission1188=Изтриване на доставчика поръчки
|
||||
Permission1190=Approve (second approval) supplier orders
|
||||
Permission1201=Резултат от износ
|
||||
Permission1202=Създаване / Промяна на износ
|
||||
Permission1231=Доставчика фактури
|
||||
@ -758,10 +767,10 @@ Permission1237=EXPORT доставчик поръчки и техните дет
|
||||
Permission1251=Пусни масов внос на външни данни в базата данни (данни товара)
|
||||
Permission1321=Износ на клиентите фактури, атрибути и плащания
|
||||
Permission1421=Износ на клиентски поръчки и атрибути
|
||||
Permission23001 = Read Scheduled task
|
||||
Permission23002 = Create/update Scheduled task
|
||||
Permission23003 = Delete Scheduled task
|
||||
Permission23004 = Execute Scheduled task
|
||||
Permission23001=Read Scheduled job
|
||||
Permission23002=Create/update Scheduled job
|
||||
Permission23003=Delete Scheduled job
|
||||
Permission23004=Execute Scheduled job
|
||||
Permission2401=Прочетете действия (събития или задачи), свързани с неговата сметка
|
||||
Permission2402=Създаване/промяна действия (събития или задачи), свързани с неговата сметка
|
||||
Permission2403=Изтрий действия (събития или задачи), свързани с неговата сметка
|
||||
@ -1107,7 +1116,7 @@ ModuleCompanyCodeAquarium=Връщане счетоводна код, постр
|
||||
ModuleCompanyCodePanicum=Връща празна код счетоводство.
|
||||
ModuleCompanyCodeDigitaria=Счетоводството код зависи от код на трето лице. Код се състои от буквата "C" на първа позиция, следван от първите 5 символа на код на трета страна.
|
||||
UseNotifications=Използвайте уведомления
|
||||
NotificationsDesc=EMails notifications feature allows you to silently send automatic mail, for some Dolibarr events. Targets of notifications can be defined:<br>* per third parties contacts (customers or suppliers), one third party at time.<br>* or by setting a global target email address on module setup page.
|
||||
NotificationsDesc=EMails notifications feature allows you to silently send automatic mail, for some Dolibarr events. Targets of notifications can be defined:<br>* per third parties contacts (customers or suppliers), one contact at time.<br>* or by setting global target email addresses in module setup page.
|
||||
ModelModules=Документи шаблони
|
||||
DocumentModelOdt=Generate documents from OpenDocuments templates (.ODT or .ODS files for OpenOffice, KOffice, TextEdit,...)
|
||||
WatermarkOnDraft=Воден знак върху проект на документ
|
||||
@ -1557,6 +1566,7 @@ SuppliersSetup=Настройка доставчик модул
|
||||
SuppliersCommandModel=Пълна шаблон на доставчика за (logo. ..)
|
||||
SuppliersInvoiceModel=Пълна образец на фактура на доставчика (logo. ..)
|
||||
SuppliersInvoiceNumberingModel=Supplier invoices numbering models
|
||||
IfSetToYesDontForgetPermission=If set to yes, don't forget to provide permissions to groups or users allowed for the second approval
|
||||
##### GeoIPMaxmind #####
|
||||
GeoIPMaxmindSetup=GeoIP MaxMind модул за настройка
|
||||
PathToGeoIPMaxmindCountryDataFile=Path to file containing Maxmind ip to country translation.<br>Examples:<br>/usr/local/share/GeoIP/GeoIP.dat<br>/usr/share/GeoIP/GeoIP.dat
|
||||
@ -1601,3 +1611,8 @@ ExpenseReportsSetup=Setup of module Expense Reports
|
||||
TemplatePDFExpenseReports=Document templates to generate expense report document
|
||||
NoModueToManageStockDecrease=No module able to manage automatic stock decrease has been activated. Stock decrease will be done on manual input only.
|
||||
NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only.
|
||||
YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for EMail notifications by enabling and configuring the module "Notification".
|
||||
ListOfNotificationsPerContact=List of notifications per contact*
|
||||
ListOfFixedNotifications=List of fixed notifications
|
||||
GoOntoContactCardToAddMore=Go on the tab "Notifications" of a thirdparty contact to add or remove notifications for contacts/addresses
|
||||
Threshold=Threshold
|
||||
|
||||
@ -48,7 +48,10 @@ InvoiceValidatedInDolibarr=Фактура %s валидирани
|
||||
InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS
|
||||
InvoiceBackToDraftInDolibarr=Фактура %s се върнете в състояние на чернова
|
||||
InvoiceDeleteDolibarr=Invoice %s deleted
|
||||
OrderValidatedInDolibarr= Поръчка %s валидирани
|
||||
OrderValidatedInDolibarr=Поръчка %s валидирани
|
||||
OrderDeliveredInDolibarr=Order %s classified delivered
|
||||
OrderCanceledInDolibarr=Поръчка %s отменен
|
||||
OrderBilledInDolibarr=Order %s classified billed
|
||||
OrderApprovedInDolibarr=Поръчка %s одобрен
|
||||
OrderRefusedInDolibarr=Order %s refused
|
||||
OrderBackToDraftInDolibarr=Поръчка %s се върне в състояние на чернова
|
||||
@ -91,3 +94,5 @@ WorkingTimeRange=Working time range
|
||||
WorkingDaysRange=Working days range
|
||||
AddEvent=Create event
|
||||
MyAvailability=My availability
|
||||
ActionType=Event type
|
||||
DateActionBegin=Start event date
|
||||
|
||||
@ -294,6 +294,8 @@ TotalOfTwoDiscountMustEqualsOriginal=Общо на две нови отстъп
|
||||
ConfirmRemoveDiscount=Сигурен ли сте, че искате да премахнете тази отстъпка?
|
||||
RelatedBill=Свързани фактура
|
||||
RelatedBills=Свързани фактури
|
||||
RelatedCustomerInvoices=Related customer invoices
|
||||
RelatedSupplierInvoices=Related supplier invoices
|
||||
LatestRelatedBill=Latest related invoice
|
||||
WarningBillExist=Warning, one or more invoice already exist
|
||||
|
||||
|
||||
@ -1,64 +1,62 @@
|
||||
# Dolibarr language file - Source file is en_US - categories
|
||||
Category=Категория
|
||||
Categories=Категории
|
||||
Rubrique=Категория
|
||||
Rubriques=Категории
|
||||
categories=категории
|
||||
TheCategorie=Категорията
|
||||
NoCategoryYet=Няма създадена категория от този тип
|
||||
Rubrique=Tag/Category
|
||||
Rubriques=Tags/Categories
|
||||
categories=tags/categories
|
||||
TheCategorie=The tag/category
|
||||
NoCategoryYet=No tag/category of this type created
|
||||
In=В
|
||||
AddIn=Добавяне в
|
||||
modify=промяна
|
||||
Classify=Добавяне
|
||||
CategoriesArea=Категории
|
||||
ProductsCategoriesArea=Категории Продукти / Услуги
|
||||
SuppliersCategoriesArea=Категории доставчици
|
||||
CustomersCategoriesArea=Категории клиенти
|
||||
ThirdPartyCategoriesArea=Категории трети страни
|
||||
MembersCategoriesArea=Категории членове
|
||||
ContactsCategoriesArea=Категории контакти
|
||||
MainCats=Основни категории
|
||||
CategoriesArea=Tags/Categories area
|
||||
ProductsCategoriesArea=Products/Services tags/categories area
|
||||
SuppliersCategoriesArea=Suppliers tags/categories area
|
||||
CustomersCategoriesArea=Customers tags/categories area
|
||||
ThirdPartyCategoriesArea=Third parties tags/categories area
|
||||
MembersCategoriesArea=Members tags/categories area
|
||||
ContactsCategoriesArea=Contacts tags/categories area
|
||||
MainCats=Main tags/categories
|
||||
SubCats=Подкатегории
|
||||
CatStatistics=Статистика
|
||||
CatList=Списък на категории
|
||||
AllCats=Всички категории
|
||||
ViewCat=Преглед на категория
|
||||
NewCat=Добавяне на категория
|
||||
NewCategory=Нова категория
|
||||
ModifCat=Промяна на категория
|
||||
CatCreated=Категорията е създадена
|
||||
CreateCat=Създаване на категория
|
||||
CreateThisCat=Създаване
|
||||
CatList=List of tags/categories
|
||||
AllCats=All tags/categories
|
||||
ViewCat=View tag/category
|
||||
NewCat=Add tag/category
|
||||
NewCategory=New tag/category
|
||||
ModifCat=Modify tag/category
|
||||
CatCreated=Tag/category created
|
||||
CreateCat=Create tag/category
|
||||
CreateThisCat=Create this tag/category
|
||||
ValidateFields=Проверка на полетата
|
||||
NoSubCat=Няма подкатегория.
|
||||
SubCatOf=Подкатегория
|
||||
FoundCats=Открити са категории
|
||||
FoundCatsForName=Открити са категории за името:
|
||||
FoundSubCatsIn=Открити са подкатегории в категорията
|
||||
ErrSameCatSelected=Избрали сте една и съща категория няколко пъти
|
||||
ErrForgotCat=Забравили сте да изберете категория
|
||||
FoundCats=Found tags/categories
|
||||
FoundCatsForName=Tags/categories found for the name :
|
||||
FoundSubCatsIn=Subcategories found in the tag/category
|
||||
ErrSameCatSelected=You selected the same tag/category several times
|
||||
ErrForgotCat=You forgot to choose the tag/category
|
||||
ErrForgotField=Забравили сте да информира полета
|
||||
ErrCatAlreadyExists=Това име вече се използва
|
||||
AddProductToCat=Добавете този продукт към категория?
|
||||
ImpossibleAddCat=Невъзможно е да добавите категория
|
||||
ImpossibleAssociateCategory=Невъзможно е да се асоциира категорията към
|
||||
AddProductToCat=Add this product to a tag/category?
|
||||
ImpossibleAddCat=Impossible to add the tag/category
|
||||
ImpossibleAssociateCategory=Impossible to associate the tag/category to
|
||||
WasAddedSuccessfully=<b>%s</b> е добавен успешно.
|
||||
ObjectAlreadyLinkedToCategory=Елемента вече е свързан с тази категория.
|
||||
CategorySuccessfullyCreated=Категорията %s е добавена успешно.
|
||||
ProductIsInCategories=Продукта/услугата е в следните категории
|
||||
SupplierIsInCategories=Третото лице е в следните категории доставчици
|
||||
CompanyIsInCustomersCategories=Това трето лице е в следните категории клиенти/prospects
|
||||
CompanyIsInSuppliersCategories=Това трето лице е в следните категории доставчици
|
||||
MemberIsInCategories=Този член е в следните категории членове
|
||||
ContactIsInCategories=Този контакт принадлежи на следните категории контакти
|
||||
ProductHasNoCategory=Този продукт/услуга не е в никакви категории
|
||||
SupplierHasNoCategory=Този доставчик не е в никакви категории
|
||||
CompanyHasNoCategory=Тази фирма не е в никакви категории
|
||||
MemberHasNoCategory=Този член не е в никакви категории
|
||||
ContactHasNoCategory=Този контакт не е в категория
|
||||
ClassifyInCategory=Добавяне в категория
|
||||
ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category.
|
||||
CategorySuccessfullyCreated=This tag/category %s has been added with success.
|
||||
ProductIsInCategories=Product/service owns to following tags/categories
|
||||
SupplierIsInCategories=Third party owns to following suppliers tags/categories
|
||||
CompanyIsInCustomersCategories=This third party owns to following customers/prospects tags/categories
|
||||
CompanyIsInSuppliersCategories=This third party owns to following suppliers tags/categories
|
||||
MemberIsInCategories=This member owns to following members tags/categories
|
||||
ContactIsInCategories=This contact owns to following contacts tags/categories
|
||||
ProductHasNoCategory=This product/service is not in any tags/categories
|
||||
SupplierHasNoCategory=This supplier is not in any tags/categories
|
||||
CompanyHasNoCategory=This company is not in any tags/categories
|
||||
MemberHasNoCategory=This member is not in any tags/categories
|
||||
ContactHasNoCategory=This contact is not in any tags/categories
|
||||
ClassifyInCategory=Classify in tag/category
|
||||
NoneCategory=Няма
|
||||
NotCategorized=Без категория
|
||||
NotCategorized=Without tag/category
|
||||
CategoryExistsAtSameLevel=Тази категория вече съществува с този код
|
||||
ReturnInProduct=Обратно към картата на продукта/услугата
|
||||
ReturnInSupplier=Обратно към картата на доставчика
|
||||
@ -66,22 +64,22 @@ ReturnInCompany=Обратно към картата на клиента/prospe
|
||||
ContentsVisibleByAll=Съдържанието ще се вижда от всички
|
||||
ContentsVisibleByAllShort=Съдържанието е видимо от всички
|
||||
ContentsNotVisibleByAllShort=Съдържанието не е видимо от всички
|
||||
CategoriesTree=Категории дърво
|
||||
DeleteCategory=Изтриване на категория
|
||||
ConfirmDeleteCategory=Сигурни ли сте, че желаете да изтриете тази категория?
|
||||
RemoveFromCategory=Премахване на връзката с категория
|
||||
RemoveFromCategoryConfirm=Сигурни ли сте, че желаете да премахнете връзката между операцията и категорията?
|
||||
NoCategoriesDefined=Не е определена категория
|
||||
SuppliersCategoryShort=Категория доставчици
|
||||
CustomersCategoryShort=Категория клиенти
|
||||
ProductsCategoryShort=Категория продукти
|
||||
MembersCategoryShort=Категория членове
|
||||
SuppliersCategoriesShort=Категории доставчици
|
||||
CustomersCategoriesShort=Категории клиенти
|
||||
CategoriesTree=Tags/categories tree
|
||||
DeleteCategory=Delete tag/category
|
||||
ConfirmDeleteCategory=Are you sure you want to delete this tag/category ?
|
||||
RemoveFromCategory=Remove link with tag/categorie
|
||||
RemoveFromCategoryConfirm=Are you sure you want to remove link between the transaction and the tag/category ?
|
||||
NoCategoriesDefined=No tag/category defined
|
||||
SuppliersCategoryShort=Suppliers tags/category
|
||||
CustomersCategoryShort=Customers tags/category
|
||||
ProductsCategoryShort=Products tags/category
|
||||
MembersCategoryShort=Members tags/category
|
||||
SuppliersCategoriesShort=Suppliers tags/categories
|
||||
CustomersCategoriesShort=Customers tags/categories
|
||||
CustomersProspectsCategoriesShort=Custo / Prosp. категории
|
||||
ProductsCategoriesShort=Категории продукти
|
||||
MembersCategoriesShort=Категории членове
|
||||
ContactCategoriesShort=Категории контакти
|
||||
ProductsCategoriesShort=Products tags/categories
|
||||
MembersCategoriesShort=Members tags/categories
|
||||
ContactCategoriesShort=Contacts tags/categories
|
||||
ThisCategoryHasNoProduct=Тази категория не съдържа никакъв продукт.
|
||||
ThisCategoryHasNoSupplier=Тази категория не съдържа никакъв доставчик.
|
||||
ThisCategoryHasNoCustomer=Тази категория не съдържа никакъв клиент.
|
||||
@ -90,23 +88,23 @@ ThisCategoryHasNoContact=Тази категория не съдържа ник
|
||||
AssignedToCustomer=Възложено на клиент
|
||||
AssignedToTheCustomer=Възложено на клиента
|
||||
InternalCategory=Вътрешна категория
|
||||
CategoryContents=Съдържание на категория
|
||||
CategId=ID на категория
|
||||
CatSupList=Списък на доставчика категории
|
||||
CatCusList=Списък на потребителите / перспективата категории
|
||||
CatProdList=Списък на продуктите категории
|
||||
CatMemberList=Списък на членовете категории
|
||||
CatContactList=Лист на контактни категории и контакти
|
||||
CatSupLinks=Връзки между доставчици и категории
|
||||
CatCusLinks=Връзки между потребител/перспектива и категории
|
||||
CatProdLinks=Връзки между продукти/услуги и категории
|
||||
CatMemberLinks=Връзки между членове и категории
|
||||
DeleteFromCat=Премахване от категорията
|
||||
CategoryContents=Tag/category contents
|
||||
CategId=Tag/category id
|
||||
CatSupList=List of supplier tags/categories
|
||||
CatCusList=List of customer/prospect tags/categories
|
||||
CatProdList=List of products tags/categories
|
||||
CatMemberList=List of members tags/categories
|
||||
CatContactList=List of contact tags/categories and contact
|
||||
CatSupLinks=Links between suppliers and tags/categories
|
||||
CatCusLinks=Links between customers/prospects and tags/categories
|
||||
CatProdLinks=Links between products/services and tags/categories
|
||||
CatMemberLinks=Links between members and tags/categories
|
||||
DeleteFromCat=Remove from tags/category
|
||||
DeletePicture=Изтрий снимка
|
||||
ConfirmDeletePicture=Потвърди изтриване на снимка?
|
||||
ExtraFieldsCategories=Допълнителни атрибути
|
||||
CategoriesSetup=Категории настройка
|
||||
CategorieRecursiv=Автоматично свързване с родителска категория
|
||||
CategoriesSetup=Tags/categories setup
|
||||
CategorieRecursiv=Link with parent tag/category automatically
|
||||
CategorieRecursivHelp=Ако е активирано, продукта ще бъде свързан също и с родителската категория при добавяне в под-категория
|
||||
AddProductServiceIntoCategory=Add the following product/service
|
||||
ShowCategory=Show category
|
||||
ShowCategory=Show tag/category
|
||||
|
||||
@ -26,15 +26,15 @@ CronLastOutput=Last run output
|
||||
CronLastResult=Last result code
|
||||
CronListOfCronJobs=List of scheduled jobs
|
||||
CronCommand=Command
|
||||
CronList=Jobs list
|
||||
CronDelete= Delete cron jobs
|
||||
CronConfirmDelete= Are you sure you want to delete this cron job ?
|
||||
CronExecute=Launch job
|
||||
CronConfirmExecute= Are you sure to execute this job now
|
||||
CronInfo= Jobs allow to execute task that have been planned
|
||||
CronWaitingJobs=Wainting jobs
|
||||
CronList=Scheduled job
|
||||
CronDelete=Delete scheduled jobs
|
||||
CronConfirmDelete=Are you sure you want to delete this scheduled jobs ?
|
||||
CronExecute=Launch scheduled jobs
|
||||
CronConfirmExecute=Are you sure to execute this scheduled jobs now ?
|
||||
CronInfo=Scheduled job module allow to execute job that have been planned
|
||||
CronWaitingJobs=Waiting jobs
|
||||
CronTask=Job
|
||||
CronNone= Няма
|
||||
CronNone=Няма
|
||||
CronDtStart=Начална дата
|
||||
CronDtEnd=Крайна дата
|
||||
CronDtNextLaunch=Next execution
|
||||
@ -75,6 +75,7 @@ CronObjectHelp=The object name to load. <BR> For exemple to fetch method of Doli
|
||||
CronMethodHelp=The object method to launch. <BR> For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of method is is <i>fecth</i>
|
||||
CronArgsHelp=The method arguments. <BR> For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of paramters can be <i>0, ProductRef</i>
|
||||
CronCommandHelp=Системния команден ред за стартиране.
|
||||
CronCreateJob=Create new Scheduled Job
|
||||
# Info
|
||||
CronInfoPage=Информация
|
||||
# Common
|
||||
|
||||
@ -6,6 +6,8 @@ Donor=Дарител
|
||||
Donors=Дарители
|
||||
AddDonation=Create a donation
|
||||
NewDonation=Ново дарение
|
||||
DeleteADonation=Delete a donation
|
||||
ConfirmDeleteADonation=Are you sure you want to delete this donation ?
|
||||
ShowDonation=Показване на дарение
|
||||
DonationPromise=Обещано дарение
|
||||
PromisesNotValid=Няма потвърдени дарения
|
||||
@ -21,6 +23,8 @@ DonationStatusPaid=Получено дарение
|
||||
DonationStatusPromiseNotValidatedShort=Проект
|
||||
DonationStatusPromiseValidatedShort=Потвърдено
|
||||
DonationStatusPaidShort=Получено
|
||||
DonationTitle=Donation receipt
|
||||
DonationDatePayment=Payment date
|
||||
ValidPromess=Потвърждаване на дарението
|
||||
DonationReceipt=Разписка за дарение
|
||||
BuildDonationReceipt=Създаване на разписка
|
||||
@ -36,3 +40,4 @@ FrenchOptions=Options for France
|
||||
DONATION_ART200=Show article 200 from CGI if you are concerned
|
||||
DONATION_ART238=Show article 238 from CGI if you are concerned
|
||||
DONATION_ART885=Show article 885 from CGI if you are concerned
|
||||
DonationPayment=Donation payment
|
||||
|
||||
@ -161,6 +161,12 @@ ErrorPriceExpressionUnknown=Unknown error '%s'
|
||||
ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs
|
||||
ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without batch/serial information, on a product requiring batch/serial information
|
||||
ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified before being allowed to do this action
|
||||
ErrorGlobalVariableUpdater0=HTTP request failed with error '%s'
|
||||
ErrorGlobalVariableUpdater1=Invalid JSON format '%s'
|
||||
ErrorGlobalVariableUpdater2=Missing parameter '%s'
|
||||
ErrorGlobalVariableUpdater3=The requested data was not found in result
|
||||
ErrorGlobalVariableUpdater4=SOAP client failed with error '%s'
|
||||
ErrorGlobalVariableUpdater5=No global variable selected
|
||||
|
||||
# Warnings
|
||||
WarningMandatorySetupNotComplete=Задължителни параметри на настройката все още не са определени
|
||||
|
||||
53
htdocs/langs/bg_BG/loan.lang
Normal file
53
htdocs/langs/bg_BG/loan.lang
Normal file
@ -0,0 +1,53 @@
|
||||
# Dolibarr language file - Source file is en_US - loan
|
||||
Loan=Loan
|
||||
Loans=Loans
|
||||
NewLoan=New Loan
|
||||
ShowLoan=Show Loan
|
||||
PaymentLoan=Loan payment
|
||||
ShowLoanPayment=Show Loan Payment
|
||||
Capital=Capital
|
||||
Insurance=Insurance
|
||||
Interest=Interest
|
||||
Nbterms=Number of terms
|
||||
LoanAccountancyCapitalCode=Accountancy code capital
|
||||
LoanAccountancyInsuranceCode=Accountancy code insurance
|
||||
LoanAccountancyInterestCode=Accountancy code interest
|
||||
LoanPayment=Loan payment
|
||||
ConfirmDeleteLoan=Confirm deleting this loan
|
||||
LoanDeleted=Loan Deleted Successfully
|
||||
ConfirmPayLoan=Confirm classify paid this loan
|
||||
LoanPaid=Loan Paid
|
||||
ErrorLoanCapital=Loan amount has to be numeric and greater than zero.
|
||||
ErrorLoanLength=Loan length has to be numeric and greater than zero.
|
||||
ErrorLoanInterest=Annual interest has to be numeric and greater than zero.
|
||||
# Calc
|
||||
LoanCalc=Bank Loans Calculator
|
||||
PurchaseFinanceInfo=Purchase & Financing Information
|
||||
SalePriceOfAsset=Sale Price of Asset
|
||||
PercentageDown=Percentage Down
|
||||
LengthOfMortgage=Length of Mortgage
|
||||
AnnualInterestRate=Annual Interest Rate
|
||||
ExplainCalculations=Explain Calculations
|
||||
ShowMeCalculationsAndAmortization=Show me the calculations and amortization
|
||||
MortgagePaymentInformation=Mortgage Payment Information
|
||||
DownPayment=Down Payment
|
||||
DownPaymentDesc=The <b>down payment</b> = The price of the home multiplied by the percentage down divided by 100 (for 5% down becomes 5/100 or 0.05)
|
||||
InterestRateDesc=The <b>interest rate</b> = The annual interest percentage divided by 100
|
||||
MonthlyFactorDesc=The <b>monthly factor</b> = The result of the following formula
|
||||
MonthlyInterestRateDesc=The <b>monthly interest rate</b> = The annual interest rate divided by 12 (for the 12 months in a year)
|
||||
MonthTermDesc=The <b>month term</b> of the loan in months = The number of years you've taken the loan out for times 12
|
||||
MonthlyPaymentDesc=The montly payment is figured out using the following formula
|
||||
AmortizationPaymentDesc=The <a href="#amortization">amortization</a> breaks down how much of your monthly payment goes towards the bank's interest, and how much goes into paying off the principal of your loan.
|
||||
AmountFinanced=Amount Financed
|
||||
AmortizationMonthlyPaymentOverYears=Amortization For Monthly Payment: <b>%s</b> over %s years
|
||||
Totalsforyear=Totals for year
|
||||
MonthlyPayment=Monthly Payment
|
||||
LoanCalcDesc=This <b>mortgage calculator</b> can be used to figure out monthly payments of a home mortgage loan, based on the home's sale price, the term of the loan desired, buyer's down payment percentage, and the loan's interest rate.<br> This calculator factors in PMI (Private Mortgage Insurance) for loans where less than 20% is put as a down payment. Also taken into consideration are the town property taxes, and their effect on the total monthly mortgage payment.<br>
|
||||
GoToInterest=%s will go towards INTEREST
|
||||
GoToPrincipal=%s will go towards PRINCIPAL
|
||||
YouWillSpend=You will spend %s on your house in year %s
|
||||
# Admin
|
||||
ConfigLoan=Configuration of the module loan
|
||||
LOAN_ACCOUNTING_ACCOUNT_CAPITAL=Accountancy code capital by default
|
||||
LOAN_ACCOUNTING_ACCOUNT_INTEREST=Accountancy code interest by default
|
||||
LOAN_ACCOUNTING_ACCOUNT_INSURANCE=Accountancy code insurance by default
|
||||
@ -139,3 +139,5 @@ ListOfNotificationsDone=Списък на всички имейли, изпра
|
||||
MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing.
|
||||
MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter <strong>'%s'</strong> to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature.
|
||||
MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s.
|
||||
YouCanAlsoUseSupervisorKeyword=You can also add the keyword <strong>__SUPERVISOREMAIL__</strong> to have email being sent to the supervisor of user (works only if an email is defined for this supervisor)
|
||||
NbOfTargetedContacts=Current number of targeted contact emails
|
||||
|
||||
@ -352,6 +352,7 @@ Status=Състояние
|
||||
Favorite=Favorite
|
||||
ShortInfo=Инфо.
|
||||
Ref=Реф.
|
||||
ExternalRef=Ref. extern
|
||||
RefSupplier=Реф. снабдител
|
||||
RefPayment=Реф. плащане
|
||||
CommercialProposalsShort=Търговски предложения
|
||||
@ -394,8 +395,8 @@ Available=На разположение
|
||||
NotYetAvailable=Все още няма данни
|
||||
NotAvailable=Не е налично
|
||||
Popularity=Популярност
|
||||
Categories=Категории
|
||||
Category=Категория
|
||||
Categories=Tags/categories
|
||||
Category=Tag/category
|
||||
By=От
|
||||
From=От
|
||||
to=за
|
||||
@ -694,6 +695,7 @@ AddBox=Add box
|
||||
SelectElementAndClickRefresh=Изберете елемент и натиснете Презареждане
|
||||
PrintFile=Print File %s
|
||||
ShowTransaction=Show transaction
|
||||
GoIntoSetupToChangeLogo=Go into Home - Setup - Company to change logo or go into Home - Setup - Display to hide.
|
||||
# Week day
|
||||
Monday=Понеделник
|
||||
Tuesday=Вторник
|
||||
|
||||
@ -64,7 +64,8 @@ ShipProduct=Кораб продукт
|
||||
Discount=Отстъпка
|
||||
CreateOrder=Създаване на поръчка
|
||||
RefuseOrder=Спецконтейнери за
|
||||
ApproveOrder=Приемам за
|
||||
ApproveOrder=Approve order
|
||||
Approve2Order=Approve order (second level)
|
||||
ValidateOrder=Валидиране за
|
||||
UnvalidateOrder=Unvalidate за
|
||||
DeleteOrder=Изтрий заявка
|
||||
@ -102,6 +103,8 @@ ClassifyBilled=Класифицирайте таксувани
|
||||
ComptaCard=Счетоводството карта
|
||||
DraftOrders=Проект за поръчки
|
||||
RelatedOrders=Подобни поръчки
|
||||
RelatedCustomerOrders=Related customer orders
|
||||
RelatedSupplierOrders=Related supplier orders
|
||||
OnProcessOrders=В процес поръчки
|
||||
RefOrder=Реф. ред
|
||||
RefCustomerOrder=Реф. поръчка на клиента
|
||||
@ -118,6 +121,7 @@ PaymentOrderRef=Плащане на поръчката %s
|
||||
CloneOrder=Clone за
|
||||
ConfirmCloneOrder=Сигурен ли сте, че искате да клонирате за този <b>%s?</b>
|
||||
DispatchSupplierOrder=Получаване %s доставчика ред
|
||||
FirstApprovalAlreadyDone=First approval already done
|
||||
##### Types de contacts #####
|
||||
TypeContact_commande_internal_SALESREPFOLL=Представител проследяване поръчка на клиента
|
||||
TypeContact_commande_internal_SHIPPING=Представител проследяване доставка
|
||||
|
||||
@ -12,6 +12,7 @@ Notify_FICHINTER_VALIDATE=Интервенция валидирани
|
||||
Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail
|
||||
Notify_BILL_VALIDATE=Клиентът фактура се заверява
|
||||
Notify_BILL_UNVALIDATE=Customer invoice unvalidated
|
||||
Notify_ORDER_SUPPLIER_VALIDATE=Supplier order recorded
|
||||
Notify_ORDER_SUPPLIER_APPROVE=Доставчик утвърдения
|
||||
Notify_ORDER_SUPPLIER_REFUSE=Доставчик за отказа
|
||||
Notify_ORDER_VALIDATE=Клиента заявка се заверява
|
||||
@ -28,7 +29,7 @@ Notify_PROPAL_SENTBYMAIL=Търговско предложение, изпрат
|
||||
Notify_BILL_PAYED=Фактурата на клиента е платена
|
||||
Notify_BILL_CANCEL=Фактурата на клиента е отменена
|
||||
Notify_BILL_SENTBYMAIL=Фактурата на клиента е изпратена по пощата
|
||||
Notify_ORDER_SUPPLIER_VALIDATE=Доставчик влязлата в сила заповед
|
||||
Notify_ORDER_SUPPLIER_VALIDATE=Supplier order recorded
|
||||
Notify_ORDER_SUPPLIER_SENTBYMAIL=Доставчик реда, изпратени по пощата
|
||||
Notify_BILL_SUPPLIER_VALIDATE=Доставчик фактура валидирани
|
||||
Notify_BILL_SUPPLIER_PAYED=Доставчик фактура плаща
|
||||
@ -47,7 +48,7 @@ Notify_PROJECT_CREATE=Project creation
|
||||
Notify_TASK_CREATE=Task created
|
||||
Notify_TASK_MODIFY=Task modified
|
||||
Notify_TASK_DELETE=Task deleted
|
||||
SeeModuleSetup=See module setup
|
||||
SeeModuleSetup=See setup of module %s
|
||||
NbOfAttachedFiles=Брой на прикачените файлове/документи
|
||||
TotalSizeOfAttachedFiles=Общ размер на прикачените файлове/документи
|
||||
MaxSize=Максимален размер
|
||||
@ -170,6 +171,7 @@ EMailTextInvoiceValidated=Фактура %s е била потвърдена.
|
||||
EMailTextProposalValidated=Предложението %s е била потвърдена.
|
||||
EMailTextOrderValidated=За %s е била потвърдена.
|
||||
EMailTextOrderApproved=За %s е одобрен.
|
||||
EMailTextOrderValidatedBy=The order %s has been recorded by %s.
|
||||
EMailTextOrderApprovedBy=Е бил одобрен за %s от %s.
|
||||
EMailTextOrderRefused=За %s е била отказана.
|
||||
EMailTextOrderRefusedBy=За %s е отказано от %s.
|
||||
|
||||
@ -245,12 +245,25 @@ MinimumRecommendedPrice=Minimum recommended price is : %s
|
||||
PriceExpressionEditor=Price expression editor
|
||||
PriceExpressionSelected=Selected price expression
|
||||
PriceExpressionEditorHelp1="price = 2 + 2" or "2 + 2" for setting the price. Use ; to separate expressions
|
||||
PriceExpressionEditorHelp2=You can access ExtraFields with variables like <b>#options_myextrafieldkey#</b>
|
||||
PriceExpressionEditorHelp2=You can access ExtraFields with variables like <b>#extrafield_myextrafieldkey#</b> and global variables with <b>#global_mycode#</b>
|
||||
PriceExpressionEditorHelp3=In both product/service and supplier prices there are these variables available:<br><b>#tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min#</b>
|
||||
PriceExpressionEditorHelp4=In product/service price only: <b>#supplier_min_price#</b><br>In supplier prices only: <b>#supplier_quantity# and #supplier_tva_tx#</b>
|
||||
PriceExpressionEditorHelp5=Available global values:
|
||||
PriceMode=Price mode
|
||||
PriceNumeric=Number
|
||||
DefaultPrice=Default price
|
||||
ComposedProductIncDecStock=Increase/Decrease stock on parent change
|
||||
ComposedProduct=Sub-product
|
||||
MinSupplierPrice=Minimun supplier price
|
||||
MinSupplierPrice=Minimum supplier price
|
||||
DynamicPriceConfiguration=Dynamic price configuration
|
||||
GlobalVariables=Global variables
|
||||
GlobalVariableUpdaters=Global variable updaters
|
||||
GlobalVariableUpdaterType0=JSON data
|
||||
GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value,
|
||||
GlobalVariableUpdaterHelpFormat0=format is {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"}
|
||||
GlobalVariableUpdaterType1=WebService data
|
||||
GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method
|
||||
GlobalVariableUpdaterHelpFormat1=format is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data, "to": "send"}}
|
||||
UpdateInterval=Update interval (minutes)
|
||||
LastUpdated=Last updated
|
||||
CorrectlyUpdated=Correctly updated
|
||||
|
||||
@ -72,6 +72,7 @@ ListSupplierInvoicesAssociatedProject=Списък на фактурите на
|
||||
ListContractAssociatedProject=Списък на договори, свързани с проекта
|
||||
ListFichinterAssociatedProject=Списък на интервенциите, свързани с проекта
|
||||
ListExpenseReportsAssociatedProject=List of expense reports associated with the project
|
||||
ListDonationsAssociatedProject=List of donations associated with the project
|
||||
ListActionsAssociatedProject=Списък на събития, свързани с проекта
|
||||
ActivityOnProjectThisWeek=Дейности в проекта тази седмица
|
||||
ActivityOnProjectThisMonth=Дейност по проект, този месец
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
RefSending=Реф. пратка
|
||||
Sending=Пратка
|
||||
Sendings=Превозите
|
||||
AllSendings=All Shipments
|
||||
Shipment=Пратка
|
||||
Shipments=Превозите
|
||||
ShowSending=Show Sending
|
||||
|
||||
@ -43,3 +43,4 @@ ListOfSupplierOrders=Списък на нарежданията за доста
|
||||
MenuOrdersSupplierToBill=Поръчки на доставчика за фактуриране
|
||||
NbDaysToDelivery=Delivery delay in days
|
||||
DescNbDaysToDelivery=The biggest delay is display among order product list
|
||||
UseDoubleApproval=Use double approval (the second approval will be any user of a defined user group)
|
||||
|
||||
53
htdocs/langs/bn_BD/loan.lang
Normal file
53
htdocs/langs/bn_BD/loan.lang
Normal file
@ -0,0 +1,53 @@
|
||||
# Dolibarr language file - Source file is en_US - loan
|
||||
Loan=Loan
|
||||
Loans=Loans
|
||||
NewLoan=New Loan
|
||||
ShowLoan=Show Loan
|
||||
PaymentLoan=Loan payment
|
||||
ShowLoanPayment=Show Loan Payment
|
||||
Capital=Capital
|
||||
Insurance=Insurance
|
||||
Interest=Interest
|
||||
Nbterms=Number of terms
|
||||
LoanAccountancyCapitalCode=Accountancy code capital
|
||||
LoanAccountancyInsuranceCode=Accountancy code insurance
|
||||
LoanAccountancyInterestCode=Accountancy code interest
|
||||
LoanPayment=Loan payment
|
||||
ConfirmDeleteLoan=Confirm deleting this loan
|
||||
LoanDeleted=Loan Deleted Successfully
|
||||
ConfirmPayLoan=Confirm classify paid this loan
|
||||
LoanPaid=Loan Paid
|
||||
ErrorLoanCapital=Loan amount has to be numeric and greater than zero.
|
||||
ErrorLoanLength=Loan length has to be numeric and greater than zero.
|
||||
ErrorLoanInterest=Annual interest has to be numeric and greater than zero.
|
||||
# Calc
|
||||
LoanCalc=Bank Loans Calculator
|
||||
PurchaseFinanceInfo=Purchase & Financing Information
|
||||
SalePriceOfAsset=Sale Price of Asset
|
||||
PercentageDown=Percentage Down
|
||||
LengthOfMortgage=Length of Mortgage
|
||||
AnnualInterestRate=Annual Interest Rate
|
||||
ExplainCalculations=Explain Calculations
|
||||
ShowMeCalculationsAndAmortization=Show me the calculations and amortization
|
||||
MortgagePaymentInformation=Mortgage Payment Information
|
||||
DownPayment=Down Payment
|
||||
DownPaymentDesc=The <b>down payment</b> = The price of the home multiplied by the percentage down divided by 100 (for 5% down becomes 5/100 or 0.05)
|
||||
InterestRateDesc=The <b>interest rate</b> = The annual interest percentage divided by 100
|
||||
MonthlyFactorDesc=The <b>monthly factor</b> = The result of the following formula
|
||||
MonthlyInterestRateDesc=The <b>monthly interest rate</b> = The annual interest rate divided by 12 (for the 12 months in a year)
|
||||
MonthTermDesc=The <b>month term</b> of the loan in months = The number of years you've taken the loan out for times 12
|
||||
MonthlyPaymentDesc=The montly payment is figured out using the following formula
|
||||
AmortizationPaymentDesc=The <a href="#amortization">amortization</a> breaks down how much of your monthly payment goes towards the bank's interest, and how much goes into paying off the principal of your loan.
|
||||
AmountFinanced=Amount Financed
|
||||
AmortizationMonthlyPaymentOverYears=Amortization For Monthly Payment: <b>%s</b> over %s years
|
||||
Totalsforyear=Totals for year
|
||||
MonthlyPayment=Monthly Payment
|
||||
LoanCalcDesc=This <b>mortgage calculator</b> can be used to figure out monthly payments of a home mortgage loan, based on the home's sale price, the term of the loan desired, buyer's down payment percentage, and the loan's interest rate.<br> This calculator factors in PMI (Private Mortgage Insurance) for loans where less than 20% is put as a down payment. Also taken into consideration are the town property taxes, and their effect on the total monthly mortgage payment.<br>
|
||||
GoToInterest=%s will go towards INTEREST
|
||||
GoToPrincipal=%s will go towards PRINCIPAL
|
||||
YouWillSpend=You will spend %s on your house in year %s
|
||||
# Admin
|
||||
ConfigLoan=Configuration of the module loan
|
||||
LOAN_ACCOUNTING_ACCOUNT_CAPITAL=Accountancy code capital by default
|
||||
LOAN_ACCOUNTING_ACCOUNT_INTEREST=Accountancy code interest by default
|
||||
LOAN_ACCOUNTING_ACCOUNT_INSURANCE=Accountancy code insurance by default
|
||||
@ -389,6 +389,7 @@ ExtrafieldSeparator=Separator
|
||||
ExtrafieldCheckBox=Checkbox
|
||||
ExtrafieldRadio=Radio button
|
||||
ExtrafieldCheckBoxFromList= Checkbox from table
|
||||
ExtrafieldLink=Link to an object
|
||||
ExtrafieldParamHelpselect=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...<br><br>In order to have the list depending on another :<br>1,value1|parent_list_code:parent_key<br>2,value2|parent_list_code:parent_key
|
||||
ExtrafieldParamHelpcheckbox=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...
|
||||
ExtrafieldParamHelpradio=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...
|
||||
@ -494,6 +495,8 @@ Module500Name=Special expenses (tax, social contributions, dividends)
|
||||
Module500Desc=Management of special expenses like taxes, social contribution, dividends and salaries
|
||||
Module510Name=Salaries
|
||||
Module510Desc=Management of employees salaries and payments
|
||||
Module520Name=Loan
|
||||
Module520Desc=Management of loans
|
||||
Module600Name=Notifications
|
||||
Module600Desc=Send EMail notifications on some Dolibarr business events to third-party contacts (setup defined on each thirdparty)
|
||||
Module700Name=Donations
|
||||
@ -508,14 +511,14 @@ Module1400Name=Accounting
|
||||
Module1400Desc=Accounting management (double parties)
|
||||
Module1520Name=Document Generation
|
||||
Module1520Desc=Mass mail document generation
|
||||
Module1780Name=Categories
|
||||
Module1780Desc=Category management (products, suppliers and customers)
|
||||
Module1780Name=Tags/Categories
|
||||
Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members)
|
||||
Module2000Name=WYSIWYG editor
|
||||
Module2000Desc=Allow to edit some text area using an advanced editor
|
||||
Module2200Name=Dynamic Prices
|
||||
Module2200Desc=Enable the usage of math expressions for prices
|
||||
Module2300Name=Cron
|
||||
Module2300Desc=Scheduled task management
|
||||
Module2300Desc=Scheduled job management
|
||||
Module2400Name=Agenda
|
||||
Module2400Desc=Events/tasks and agenda management
|
||||
Module2500Name=Electronic Content Management
|
||||
@ -714,6 +717,11 @@ Permission510=Read Salaries
|
||||
Permission512=Create/modify salaries
|
||||
Permission514=Delete salaries
|
||||
Permission517=Export salaries
|
||||
Permission520=Read Loans
|
||||
Permission522=Create/modify loans
|
||||
Permission524=Delete loans
|
||||
Permission525=Access loan calculator
|
||||
Permission527=Export loans
|
||||
Permission531=Read services
|
||||
Permission532=Create/modify services
|
||||
Permission534=Delete services
|
||||
@ -746,6 +754,7 @@ Permission1185=Approve supplier orders
|
||||
Permission1186=Order supplier orders
|
||||
Permission1187=Acknowledge receipt of supplier orders
|
||||
Permission1188=Delete supplier orders
|
||||
Permission1190=Approve (second approval) supplier orders
|
||||
Permission1201=Get result of an export
|
||||
Permission1202=Create/Modify an export
|
||||
Permission1231=Read supplier invoices
|
||||
@ -758,10 +767,10 @@ Permission1237=Export supplier orders and their details
|
||||
Permission1251=Run mass imports of external data into database (data load)
|
||||
Permission1321=Export customer invoices, attributes and payments
|
||||
Permission1421=Export customer orders and attributes
|
||||
Permission23001 = Read Scheduled task
|
||||
Permission23002 = Create/update Scheduled task
|
||||
Permission23003 = Delete Scheduled task
|
||||
Permission23004 = Execute Scheduled task
|
||||
Permission23001=Read Scheduled job
|
||||
Permission23002=Create/update Scheduled job
|
||||
Permission23003=Delete Scheduled job
|
||||
Permission23004=Execute Scheduled job
|
||||
Permission2401=Read actions (events or tasks) linked to his account
|
||||
Permission2402=Create/modify actions (events or tasks) linked to his account
|
||||
Permission2403=Delete actions (events or tasks) linked to his account
|
||||
@ -1107,7 +1116,7 @@ ModuleCompanyCodeAquarium=Return an accountancy code built by:<br>%s followed by
|
||||
ModuleCompanyCodePanicum=Return an empty accountancy code.
|
||||
ModuleCompanyCodeDigitaria=Accountancy code depends on third party code. The code is composed of the character "C" in the first position followed by the first 5 characters of the third party code.
|
||||
UseNotifications=Use notifications
|
||||
NotificationsDesc=EMails notifications feature allows you to silently send automatic mail, for some Dolibarr events. Targets of notifications can be defined:<br>* per third parties contacts (customers or suppliers), one third party at time.<br>* or by setting a global target email address on module setup page.
|
||||
NotificationsDesc=EMails notifications feature allows you to silently send automatic mail, for some Dolibarr events. Targets of notifications can be defined:<br>* per third parties contacts (customers or suppliers), one contact at time.<br>* or by setting global target email addresses in module setup page.
|
||||
ModelModules=Documents templates
|
||||
DocumentModelOdt=Generate documents from OpenDocuments templates (.ODT or .ODS files for OpenOffice, KOffice, TextEdit,...)
|
||||
WatermarkOnDraft=Watermark on draft document
|
||||
@ -1557,6 +1566,7 @@ SuppliersSetup=Supplier module setup
|
||||
SuppliersCommandModel=Complete template of supplier order (logo...)
|
||||
SuppliersInvoiceModel=Complete template of supplier invoice (logo...)
|
||||
SuppliersInvoiceNumberingModel=Supplier invoices numbering models
|
||||
IfSetToYesDontForgetPermission=If set to yes, don't forget to provide permissions to groups or users allowed for the second approval
|
||||
##### GeoIPMaxmind #####
|
||||
GeoIPMaxmindSetup=GeoIP Maxmind module setup
|
||||
PathToGeoIPMaxmindCountryDataFile=Putanja do datoteke koja sadrži Maxmind ip do prevoda za zemlju. <br> Primjeri: <br>/usr/local/share/GeoIP/GeoIP.dat<br>/usr/share/GeoIP/GeoIP.dat
|
||||
@ -1601,3 +1611,8 @@ ExpenseReportsSetup=Setup of module Expense Reports
|
||||
TemplatePDFExpenseReports=Document templates to generate expense report document
|
||||
NoModueToManageStockDecrease=No module able to manage automatic stock decrease has been activated. Stock decrease will be done on manual input only.
|
||||
NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only.
|
||||
YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for EMail notifications by enabling and configuring the module "Notification".
|
||||
ListOfNotificationsPerContact=List of notifications per contact*
|
||||
ListOfFixedNotifications=List of fixed notifications
|
||||
GoOntoContactCardToAddMore=Go on the tab "Notifications" of a thirdparty contact to add or remove notifications for contacts/addresses
|
||||
Threshold=Threshold
|
||||
|
||||
@ -48,7 +48,10 @@ InvoiceValidatedInDolibarr=Faktura %s potvrđena
|
||||
InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS
|
||||
InvoiceBackToDraftInDolibarr=Faktura %s vraćena u status izrade
|
||||
InvoiceDeleteDolibarr=Faktura %s obrisana
|
||||
OrderValidatedInDolibarr= Narudžba %s potvrđena
|
||||
OrderValidatedInDolibarr=Narudžba %s potvrđena
|
||||
OrderDeliveredInDolibarr=Order %s classified delivered
|
||||
OrderCanceledInDolibarr=Narudžba %s otkazana
|
||||
OrderBilledInDolibarr=Order %s classified billed
|
||||
OrderApprovedInDolibarr=Narudžba %s odobrena
|
||||
OrderRefusedInDolibarr=Order %s refused
|
||||
OrderBackToDraftInDolibarr=NArudžbu %s vratiti u status izrade
|
||||
@ -91,3 +94,5 @@ WorkingTimeRange=Working time range
|
||||
WorkingDaysRange=Working days range
|
||||
AddEvent=Create event
|
||||
MyAvailability=My availability
|
||||
ActionType=Event type
|
||||
DateActionBegin=Start event date
|
||||
|
||||
@ -294,6 +294,8 @@ TotalOfTwoDiscountMustEqualsOriginal=Ukupno za dva nova popusta mora biti jednak
|
||||
ConfirmRemoveDiscount=Jeste li sigurni da želite ukloniti ovaj popust?
|
||||
RelatedBill=Povezana faktura
|
||||
RelatedBills=Povezane fakture
|
||||
RelatedCustomerInvoices=Related customer invoices
|
||||
RelatedSupplierInvoices=Related supplier invoices
|
||||
LatestRelatedBill=Latest related invoice
|
||||
WarningBillExist=Warning, one or more invoice already exist
|
||||
|
||||
|
||||
@ -1,64 +1,62 @@
|
||||
# Dolibarr language file - Source file is en_US - categories
|
||||
Category=Kategorija
|
||||
Categories=Kategorije
|
||||
Rubrique=Kategorija
|
||||
Rubriques=Kategorije
|
||||
categories=kategorije
|
||||
TheCategorie=Kategorija
|
||||
NoCategoryYet=Nema kreirane kategorije ovog tipa
|
||||
Rubrique=Tag/Category
|
||||
Rubriques=Tags/Categories
|
||||
categories=tags/categories
|
||||
TheCategorie=The tag/category
|
||||
NoCategoryYet=No tag/category of this type created
|
||||
In=U
|
||||
AddIn=Dodaj u
|
||||
modify=izmijeniti
|
||||
Classify=Svrstati
|
||||
CategoriesArea=Područje za kategorije
|
||||
ProductsCategoriesArea=Područje za kategorije proizvoda/usluga
|
||||
SuppliersCategoriesArea=Područje za kategorije dobavljača
|
||||
CustomersCategoriesArea=Područje za kategorije kupaca
|
||||
ThirdPartyCategoriesArea=Third parties categories area
|
||||
MembersCategoriesArea=Područje za kategorije članova
|
||||
ContactsCategoriesArea=Područje za kategorije kontakata
|
||||
MainCats=Glavne kategorije
|
||||
CategoriesArea=Tags/Categories area
|
||||
ProductsCategoriesArea=Products/Services tags/categories area
|
||||
SuppliersCategoriesArea=Suppliers tags/categories area
|
||||
CustomersCategoriesArea=Customers tags/categories area
|
||||
ThirdPartyCategoriesArea=Third parties tags/categories area
|
||||
MembersCategoriesArea=Members tags/categories area
|
||||
ContactsCategoriesArea=Contacts tags/categories area
|
||||
MainCats=Main tags/categories
|
||||
SubCats=Podkategorije
|
||||
CatStatistics=Statistika
|
||||
CatList=Lista kategorija
|
||||
AllCats=Sve kategorije
|
||||
ViewCat=Pogledaj kategoriju
|
||||
NewCat=Dodaj kategoriju
|
||||
NewCategory=Nova kategorija
|
||||
ModifCat=Izmijeni kategoriju
|
||||
CatCreated=Kategorija kreirana
|
||||
CreateCat=Kreiraj kategoriju
|
||||
CreateThisCat=Kreiraj ovu kategoriju
|
||||
CatList=List of tags/categories
|
||||
AllCats=All tags/categories
|
||||
ViewCat=View tag/category
|
||||
NewCat=Add tag/category
|
||||
NewCategory=New tag/category
|
||||
ModifCat=Modify tag/category
|
||||
CatCreated=Tag/category created
|
||||
CreateCat=Create tag/category
|
||||
CreateThisCat=Create this tag/category
|
||||
ValidateFields=Potvrdi polja
|
||||
NoSubCat=Nema podkategorije
|
||||
SubCatOf=Podkategorija
|
||||
FoundCats=Kategorije pronađene
|
||||
FoundCatsForName=Kategorije pronađene za ime :
|
||||
FoundSubCatsIn=Podkategorije pronađene u kategoriji
|
||||
ErrSameCatSelected=Izbrali ste istu kategoriju nekoliko puta
|
||||
ErrForgotCat=Zaboravili ste izabrati kategoriju
|
||||
FoundCats=Found tags/categories
|
||||
FoundCatsForName=Tags/categories found for the name :
|
||||
FoundSubCatsIn=Subcategories found in the tag/category
|
||||
ErrSameCatSelected=You selected the same tag/category several times
|
||||
ErrForgotCat=You forgot to choose the tag/category
|
||||
ErrForgotField=Zaboravili ste prijaviti polja
|
||||
ErrCatAlreadyExists=Ime se već koristi
|
||||
AddProductToCat=Dodaj ovaj proizvod u kategoriju?
|
||||
ImpossibleAddCat=Nemoguće dodati kategoriju
|
||||
ImpossibleAssociateCategory=Nemoguće povezati kategoriju sa
|
||||
AddProductToCat=Add this product to a tag/category?
|
||||
ImpossibleAddCat=Impossible to add the tag/category
|
||||
ImpossibleAssociateCategory=Impossible to associate the tag/category to
|
||||
WasAddedSuccessfully=<b>%s</b> je uspješno dodan/a.
|
||||
ObjectAlreadyLinkedToCategory=Element je već povezan sa ovom kategorijom.
|
||||
CategorySuccessfullyCreated=Ova kategorija %s je uspješno dodana.
|
||||
ProductIsInCategories=Proizvod/usluga pripada slijedećim kategorijama
|
||||
SupplierIsInCategories=Third party owns to following suppliers categories
|
||||
CompanyIsInCustomersCategories=This third party owns to following customers/prospects categories
|
||||
CompanyIsInSuppliersCategories=This third party owns to following suppliers categories
|
||||
MemberIsInCategories=Ovaj član pripada sljedećim kategorijama članova
|
||||
ContactIsInCategories=Ovaj kontakt pripada slijedećim kategorijama kontakata
|
||||
ProductHasNoCategory=Ovaj prozvod/usluga nije dodan u neku od kategorija
|
||||
SupplierHasNoCategory=Ovaj dobavljač nije dodan u neku od kategorija
|
||||
CompanyHasNoCategory=Ova kopmanija nije dodana u neku od kategorija
|
||||
MemberHasNoCategory=Ovaj član nije dodan u neku od kategorija
|
||||
ContactHasNoCategory=Ovaj kontakt nije u nekoj od kategorija
|
||||
ClassifyInCategory=Svrstaj u kategoriju
|
||||
ObjectAlreadyLinkedToCategory=Element is already linked to this tag/category.
|
||||
CategorySuccessfullyCreated=This tag/category %s has been added with success.
|
||||
ProductIsInCategories=Product/service owns to following tags/categories
|
||||
SupplierIsInCategories=Third party owns to following suppliers tags/categories
|
||||
CompanyIsInCustomersCategories=This third party owns to following customers/prospects tags/categories
|
||||
CompanyIsInSuppliersCategories=This third party owns to following suppliers tags/categories
|
||||
MemberIsInCategories=This member owns to following members tags/categories
|
||||
ContactIsInCategories=This contact owns to following contacts tags/categories
|
||||
ProductHasNoCategory=This product/service is not in any tags/categories
|
||||
SupplierHasNoCategory=This supplier is not in any tags/categories
|
||||
CompanyHasNoCategory=This company is not in any tags/categories
|
||||
MemberHasNoCategory=This member is not in any tags/categories
|
||||
ContactHasNoCategory=This contact is not in any tags/categories
|
||||
ClassifyInCategory=Classify in tag/category
|
||||
NoneCategory=Ništa
|
||||
NotCategorized=Bez kategorije
|
||||
NotCategorized=Without tag/category
|
||||
CategoryExistsAtSameLevel=Već postoji kategorija sa ovom referencom
|
||||
ReturnInProduct=Nazad na karticu proizvoda/usluge
|
||||
ReturnInSupplier=Nazad na karticu dobavljača
|
||||
@ -66,22 +64,22 @@ ReturnInCompany=Back to customer/prospect card
|
||||
ContentsVisibleByAll=Sadržaj će biti vidljiv svima
|
||||
ContentsVisibleByAllShort=Sadržaj vidljiv svima
|
||||
ContentsNotVisibleByAllShort=Sadržaj nije vidljiv svima
|
||||
CategoriesTree=Categories tree
|
||||
DeleteCategory=Obriši kategoriju
|
||||
ConfirmDeleteCategory=Jeste li sigurni da želite obrisati ovu kategoriju?
|
||||
RemoveFromCategory=Uklonite vezu sa kategorijom
|
||||
RemoveFromCategoryConfirm=Jeste li sigurni da želite ukloniti vezu između transakcije i kategorije?
|
||||
NoCategoriesDefined=Nema definisane kategorije
|
||||
SuppliersCategoryShort=Kategorija dobavljača
|
||||
CustomersCategoryShort=Kategorija kupaca
|
||||
ProductsCategoryShort=Kategorija prozvoda
|
||||
MembersCategoryShort=Kategorija članova
|
||||
SuppliersCategoriesShort=Kategorije dobavljača
|
||||
CustomersCategoriesShort=Kategorije kupaca
|
||||
CategoriesTree=Tags/categories tree
|
||||
DeleteCategory=Delete tag/category
|
||||
ConfirmDeleteCategory=Are you sure you want to delete this tag/category ?
|
||||
RemoveFromCategory=Remove link with tag/categorie
|
||||
RemoveFromCategoryConfirm=Are you sure you want to remove link between the transaction and the tag/category ?
|
||||
NoCategoriesDefined=No tag/category defined
|
||||
SuppliersCategoryShort=Suppliers tags/category
|
||||
CustomersCategoryShort=Customers tags/category
|
||||
ProductsCategoryShort=Products tags/category
|
||||
MembersCategoryShort=Members tags/category
|
||||
SuppliersCategoriesShort=Suppliers tags/categories
|
||||
CustomersCategoriesShort=Customers tags/categories
|
||||
CustomersProspectsCategoriesShort=Custo./Prosp. categories
|
||||
ProductsCategoriesShort=Kategorije proizvoda
|
||||
MembersCategoriesShort=Kategorije članova
|
||||
ContactCategoriesShort=Kategorije kontakata
|
||||
ProductsCategoriesShort=Products tags/categories
|
||||
MembersCategoriesShort=Members tags/categories
|
||||
ContactCategoriesShort=Contacts tags/categories
|
||||
ThisCategoryHasNoProduct=Ova kategorija ne sadrži nijedan proizvod.
|
||||
ThisCategoryHasNoSupplier=Ova kategorija ne sadrži nijednog dobavljača.
|
||||
ThisCategoryHasNoCustomer=Ova kategorija ne sadrži nijednog kupca.
|
||||
@ -90,23 +88,23 @@ ThisCategoryHasNoContact=Ova kategorija ne sadrži nijednog kontakta.
|
||||
AssignedToCustomer=Dodijeljeno nekom kupcu
|
||||
AssignedToTheCustomer=Dodijeljeno ovom kupcu
|
||||
InternalCategory=Interna kategorija
|
||||
CategoryContents=Sadržaj kategorije
|
||||
CategId=ID kategorije
|
||||
CatSupList=Lista kategorija za dobavljače
|
||||
CatCusList=List of customer/prospect categories
|
||||
CatProdList=Lista kategorija za proizvode
|
||||
CatMemberList=Lista kategorija za članove
|
||||
CatContactList=Lista kategorija kontakata i kontakata
|
||||
CatSupLinks=Veze između dobavljača i kategorija
|
||||
CatCusLinks=Links between customers/prospects and categories
|
||||
CatProdLinks=Veze između proizvoda/usluga i kategorija
|
||||
CatMemberLinks=Veze između članova i kategorija
|
||||
DeleteFromCat=Ukloni iz kategorije
|
||||
CategoryContents=Tag/category contents
|
||||
CategId=Tag/category id
|
||||
CatSupList=List of supplier tags/categories
|
||||
CatCusList=List of customer/prospect tags/categories
|
||||
CatProdList=List of products tags/categories
|
||||
CatMemberList=List of members tags/categories
|
||||
CatContactList=List of contact tags/categories and contact
|
||||
CatSupLinks=Links between suppliers and tags/categories
|
||||
CatCusLinks=Links between customers/prospects and tags/categories
|
||||
CatProdLinks=Links between products/services and tags/categories
|
||||
CatMemberLinks=Links between members and tags/categories
|
||||
DeleteFromCat=Remove from tags/category
|
||||
DeletePicture=Picture delete
|
||||
ConfirmDeletePicture=Confirm picture deletion?
|
||||
ExtraFieldsCategories=Complementary attributes
|
||||
CategoriesSetup=Categories setup
|
||||
CategorieRecursiv=Link with parent category automatically
|
||||
CategoriesSetup=Tags/categories setup
|
||||
CategorieRecursiv=Link with parent tag/category automatically
|
||||
CategorieRecursivHelp=If activated, product will also linked to parent category when adding into a subcategory
|
||||
AddProductServiceIntoCategory=Add the following product/service
|
||||
ShowCategory=Show category
|
||||
ShowCategory=Show tag/category
|
||||
|
||||
@ -26,15 +26,15 @@ CronLastOutput=Izvještaj o zadnjem pokretanju
|
||||
CronLastResult=Šifra rezultat zadnjeg pokretanja
|
||||
CronListOfCronJobs=Lista redovnih poslova
|
||||
CronCommand=Komanda
|
||||
CronList=Jobs list
|
||||
CronDelete= Obriši kron posao
|
||||
CronConfirmDelete= Are you sure you want to delete this cron job ?
|
||||
CronExecute=Launch job
|
||||
CronConfirmExecute= Jeste li sigurni sada da izvrši ovaj posao sada
|
||||
CronInfo= Poslovi omogućavaju da se izvrše zadatci koji su planirani
|
||||
CronWaitingJobs=Wainting jobs
|
||||
CronList=Scheduled job
|
||||
CronDelete=Delete scheduled jobs
|
||||
CronConfirmDelete=Are you sure you want to delete this scheduled jobs ?
|
||||
CronExecute=Launch scheduled jobs
|
||||
CronConfirmExecute=Are you sure to execute this scheduled jobs now ?
|
||||
CronInfo=Scheduled job module allow to execute job that have been planned
|
||||
CronWaitingJobs=Waiting jobs
|
||||
CronTask=Job
|
||||
CronNone= Ništa
|
||||
CronNone=Ništa
|
||||
CronDtStart=Datum početka
|
||||
CronDtEnd=End date
|
||||
CronDtNextLaunch=Sljedeće izvršenje
|
||||
@ -75,6 +75,7 @@ CronObjectHelp=The object name to load. <BR> For exemple to fetch method of Doli
|
||||
CronMethodHelp=The object method to launch. <BR> For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of method is is <i>fecth</i>
|
||||
CronArgsHelp=The method arguments. <BR> For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of paramters can be <i>0, ProductRef</i>
|
||||
CronCommandHelp=Sistemska komanda za izvršenje
|
||||
CronCreateJob=Create new Scheduled Job
|
||||
# Info
|
||||
CronInfoPage=Inromacije
|
||||
# Common
|
||||
|
||||
@ -6,6 +6,8 @@ Donor=Donator
|
||||
Donors=Donatori
|
||||
AddDonation=Create a donation
|
||||
NewDonation=Nova donacija
|
||||
DeleteADonation=Delete a donation
|
||||
ConfirmDeleteADonation=Are you sure you want to delete this donation ?
|
||||
ShowDonation=Prikaži donaciju
|
||||
DonationPromise=Obećanje za poklon
|
||||
PromisesNotValid=Nepotvrđena obećanja
|
||||
@ -21,6 +23,8 @@ DonationStatusPaid=Primljena donacija
|
||||
DonationStatusPromiseNotValidatedShort=Nacrt
|
||||
DonationStatusPromiseValidatedShort=Potvrđena donacija
|
||||
DonationStatusPaidShort=Primljena donacija
|
||||
DonationTitle=Donation receipt
|
||||
DonationDatePayment=Payment date
|
||||
ValidPromess=Potvrdi obećanje
|
||||
DonationReceipt=Priznanica za donaciju
|
||||
BuildDonationReceipt=Napravi priznanicu
|
||||
@ -36,3 +40,4 @@ FrenchOptions=Options for France
|
||||
DONATION_ART200=Show article 200 from CGI if you are concerned
|
||||
DONATION_ART238=Show article 238 from CGI if you are concerned
|
||||
DONATION_ART885=Show article 885 from CGI if you are concerned
|
||||
DonationPayment=Donation payment
|
||||
|
||||
@ -161,6 +161,12 @@ ErrorPriceExpressionUnknown=Unknown error '%s'
|
||||
ErrorSrcAndTargetWarehouseMustDiffers=Source and target warehouses must differs
|
||||
ErrorTryToMakeMoveOnProductRequiringBatchData=Error, trying to make a stock movement without batch/serial information, on a product requiring batch/serial information
|
||||
ErrorCantSetReceptionToTotalDoneWithReceptionToApprove=All recorded receptions must first be verified before being allowed to do this action
|
||||
ErrorGlobalVariableUpdater0=HTTP request failed with error '%s'
|
||||
ErrorGlobalVariableUpdater1=Invalid JSON format '%s'
|
||||
ErrorGlobalVariableUpdater2=Missing parameter '%s'
|
||||
ErrorGlobalVariableUpdater3=The requested data was not found in result
|
||||
ErrorGlobalVariableUpdater4=SOAP client failed with error '%s'
|
||||
ErrorGlobalVariableUpdater5=No global variable selected
|
||||
|
||||
# Warnings
|
||||
WarningMandatorySetupNotComplete=Mandatory setup parameters are not yet defined
|
||||
|
||||
53
htdocs/langs/bs_BA/loan.lang
Normal file
53
htdocs/langs/bs_BA/loan.lang
Normal file
@ -0,0 +1,53 @@
|
||||
# Dolibarr language file - Source file is en_US - loan
|
||||
Loan=Loan
|
||||
Loans=Loans
|
||||
NewLoan=New Loan
|
||||
ShowLoan=Show Loan
|
||||
PaymentLoan=Loan payment
|
||||
ShowLoanPayment=Show Loan Payment
|
||||
Capital=Capital
|
||||
Insurance=Insurance
|
||||
Interest=Interest
|
||||
Nbterms=Number of terms
|
||||
LoanAccountancyCapitalCode=Accountancy code capital
|
||||
LoanAccountancyInsuranceCode=Accountancy code insurance
|
||||
LoanAccountancyInterestCode=Accountancy code interest
|
||||
LoanPayment=Loan payment
|
||||
ConfirmDeleteLoan=Confirm deleting this loan
|
||||
LoanDeleted=Loan Deleted Successfully
|
||||
ConfirmPayLoan=Confirm classify paid this loan
|
||||
LoanPaid=Loan Paid
|
||||
ErrorLoanCapital=Loan amount has to be numeric and greater than zero.
|
||||
ErrorLoanLength=Loan length has to be numeric and greater than zero.
|
||||
ErrorLoanInterest=Annual interest has to be numeric and greater than zero.
|
||||
# Calc
|
||||
LoanCalc=Bank Loans Calculator
|
||||
PurchaseFinanceInfo=Purchase & Financing Information
|
||||
SalePriceOfAsset=Sale Price of Asset
|
||||
PercentageDown=Percentage Down
|
||||
LengthOfMortgage=Length of Mortgage
|
||||
AnnualInterestRate=Annual Interest Rate
|
||||
ExplainCalculations=Explain Calculations
|
||||
ShowMeCalculationsAndAmortization=Show me the calculations and amortization
|
||||
MortgagePaymentInformation=Mortgage Payment Information
|
||||
DownPayment=Down Payment
|
||||
DownPaymentDesc=The <b>down payment</b> = The price of the home multiplied by the percentage down divided by 100 (for 5% down becomes 5/100 or 0.05)
|
||||
InterestRateDesc=The <b>interest rate</b> = The annual interest percentage divided by 100
|
||||
MonthlyFactorDesc=The <b>monthly factor</b> = The result of the following formula
|
||||
MonthlyInterestRateDesc=The <b>monthly interest rate</b> = The annual interest rate divided by 12 (for the 12 months in a year)
|
||||
MonthTermDesc=The <b>month term</b> of the loan in months = The number of years you've taken the loan out for times 12
|
||||
MonthlyPaymentDesc=The montly payment is figured out using the following formula
|
||||
AmortizationPaymentDesc=The <a href="#amortization">amortization</a> breaks down how much of your monthly payment goes towards the bank's interest, and how much goes into paying off the principal of your loan.
|
||||
AmountFinanced=Amount Financed
|
||||
AmortizationMonthlyPaymentOverYears=Amortization For Monthly Payment: <b>%s</b> over %s years
|
||||
Totalsforyear=Totals for year
|
||||
MonthlyPayment=Monthly Payment
|
||||
LoanCalcDesc=This <b>mortgage calculator</b> can be used to figure out monthly payments of a home mortgage loan, based on the home's sale price, the term of the loan desired, buyer's down payment percentage, and the loan's interest rate.<br> This calculator factors in PMI (Private Mortgage Insurance) for loans where less than 20% is put as a down payment. Also taken into consideration are the town property taxes, and their effect on the total monthly mortgage payment.<br>
|
||||
GoToInterest=%s will go towards INTEREST
|
||||
GoToPrincipal=%s will go towards PRINCIPAL
|
||||
YouWillSpend=You will spend %s on your house in year %s
|
||||
# Admin
|
||||
ConfigLoan=Configuration of the module loan
|
||||
LOAN_ACCOUNTING_ACCOUNT_CAPITAL=Accountancy code capital by default
|
||||
LOAN_ACCOUNTING_ACCOUNT_INTEREST=Accountancy code interest by default
|
||||
LOAN_ACCOUNTING_ACCOUNT_INSURANCE=Accountancy code insurance by default
|
||||
@ -139,3 +139,5 @@ ListOfNotificationsDone=Lista svih notifikacija o slanju emaila
|
||||
MailSendSetupIs=Configuration of email sending has been setup to '%s'. This mode can't be used to send mass emailing.
|
||||
MailSendSetupIs2=You must first go, with an admin account, into menu %sHome - Setup - EMails%s to change parameter <strong>'%s'</strong> to use mode '%s'. With this mode, you can enter setup of the SMTP server provided by your Internet Service Provider and use Mass emailing feature.
|
||||
MailSendSetupIs3=If you have any questions on how to setup your SMTP server, you can ask to %s.
|
||||
YouCanAlsoUseSupervisorKeyword=You can also add the keyword <strong>__SUPERVISOREMAIL__</strong> to have email being sent to the supervisor of user (works only if an email is defined for this supervisor)
|
||||
NbOfTargetedContacts=Current number of targeted contact emails
|
||||
|
||||
@ -352,6 +352,7 @@ Status=Status
|
||||
Favorite=Favorite
|
||||
ShortInfo=Info.
|
||||
Ref=Ref.
|
||||
ExternalRef=Ref. extern
|
||||
RefSupplier=Ref. supplier
|
||||
RefPayment=Ref. payment
|
||||
CommercialProposalsShort=Poslovni prijedlozi
|
||||
@ -394,8 +395,8 @@ Available=Available
|
||||
NotYetAvailable=Not yet available
|
||||
NotAvailable=Not available
|
||||
Popularity=Popularity
|
||||
Categories=Categories
|
||||
Category=Category
|
||||
Categories=Tags/categories
|
||||
Category=Tag/category
|
||||
By=By
|
||||
From=From
|
||||
to=to
|
||||
@ -694,6 +695,7 @@ AddBox=Add box
|
||||
SelectElementAndClickRefresh=Select an element and click Refresh
|
||||
PrintFile=Print File %s
|
||||
ShowTransaction=Show transaction
|
||||
GoIntoSetupToChangeLogo=Go into Home - Setup - Company to change logo or go into Home - Setup - Display to hide.
|
||||
# Week day
|
||||
Monday=Monday
|
||||
Tuesday=Tuesday
|
||||
|
||||
@ -64,7 +64,8 @@ ShipProduct=Ship product
|
||||
Discount=Discount
|
||||
CreateOrder=Create Order
|
||||
RefuseOrder=Refuse order
|
||||
ApproveOrder=Accept order
|
||||
ApproveOrder=Approve order
|
||||
Approve2Order=Approve order (second level)
|
||||
ValidateOrder=Validate order
|
||||
UnvalidateOrder=Unvalidate order
|
||||
DeleteOrder=Delete order
|
||||
@ -102,6 +103,8 @@ ClassifyBilled=Classify billed
|
||||
ComptaCard=Accountancy card
|
||||
DraftOrders=Draft orders
|
||||
RelatedOrders=Related orders
|
||||
RelatedCustomerOrders=Related customer orders
|
||||
RelatedSupplierOrders=Related supplier orders
|
||||
OnProcessOrders=In process orders
|
||||
RefOrder=Ref. order
|
||||
RefCustomerOrder=Ref. customer order
|
||||
@ -118,6 +121,7 @@ PaymentOrderRef=Payment of order %s
|
||||
CloneOrder=Clone order
|
||||
ConfirmCloneOrder=Are you sure you want to clone this order <b>%s</b> ?
|
||||
DispatchSupplierOrder=Receiving supplier order %s
|
||||
FirstApprovalAlreadyDone=First approval already done
|
||||
##### Types de contacts #####
|
||||
TypeContact_commande_internal_SALESREPFOLL=Representative following-up customer order
|
||||
TypeContact_commande_internal_SHIPPING=Representative following-up shipping
|
||||
|
||||
@ -12,6 +12,7 @@ Notify_FICHINTER_VALIDATE=Intervention validated
|
||||
Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail
|
||||
Notify_BILL_VALIDATE=Customer invoice validated
|
||||
Notify_BILL_UNVALIDATE=Customer invoice unvalidated
|
||||
Notify_ORDER_SUPPLIER_VALIDATE=Supplier order recorded
|
||||
Notify_ORDER_SUPPLIER_APPROVE=Supplier order approved
|
||||
Notify_ORDER_SUPPLIER_REFUSE=Supplier order refused
|
||||
Notify_ORDER_VALIDATE=Customer order validated
|
||||
@ -28,7 +29,7 @@ Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail
|
||||
Notify_BILL_PAYED=Customer invoice payed
|
||||
Notify_BILL_CANCEL=Customer invoice canceled
|
||||
Notify_BILL_SENTBYMAIL=Customer invoice sent by mail
|
||||
Notify_ORDER_SUPPLIER_VALIDATE=Supplier order validated
|
||||
Notify_ORDER_SUPPLIER_VALIDATE=Supplier order recorded
|
||||
Notify_ORDER_SUPPLIER_SENTBYMAIL=Supplier order sent by mail
|
||||
Notify_BILL_SUPPLIER_VALIDATE=Supplier invoice validated
|
||||
Notify_BILL_SUPPLIER_PAYED=Supplier invoice payed
|
||||
@ -47,7 +48,7 @@ Notify_PROJECT_CREATE=Project creation
|
||||
Notify_TASK_CREATE=Task created
|
||||
Notify_TASK_MODIFY=Task modified
|
||||
Notify_TASK_DELETE=Task deleted
|
||||
SeeModuleSetup=See module setup
|
||||
SeeModuleSetup=See setup of module %s
|
||||
NbOfAttachedFiles=Number of attached files/documents
|
||||
TotalSizeOfAttachedFiles=Total size of attached files/documents
|
||||
MaxSize=Maximum size
|
||||
@ -170,6 +171,7 @@ EMailTextInvoiceValidated=The invoice %s has been validated.
|
||||
EMailTextProposalValidated=The proposal %s has been validated.
|
||||
EMailTextOrderValidated=The order %s has been validated.
|
||||
EMailTextOrderApproved=The order %s has been approved.
|
||||
EMailTextOrderValidatedBy=The order %s has been recorded by %s.
|
||||
EMailTextOrderApprovedBy=The order %s has been approved by %s.
|
||||
EMailTextOrderRefused=The order %s has been refused.
|
||||
EMailTextOrderRefusedBy=The order %s has been refused by %s.
|
||||
|
||||
@ -245,12 +245,25 @@ MinimumRecommendedPrice=Minimum recommended price is : %s
|
||||
PriceExpressionEditor=Price expression editor
|
||||
PriceExpressionSelected=Selected price expression
|
||||
PriceExpressionEditorHelp1="price = 2 + 2" or "2 + 2" for setting the price. Use ; to separate expressions
|
||||
PriceExpressionEditorHelp2=You can access ExtraFields with variables like <b>#options_myextrafieldkey#</b>
|
||||
PriceExpressionEditorHelp2=You can access ExtraFields with variables like <b>#extrafield_myextrafieldkey#</b> and global variables with <b>#global_mycode#</b>
|
||||
PriceExpressionEditorHelp3=In both product/service and supplier prices there are these variables available:<br><b>#tva_tx# #localtax1_tx# #localtax2_tx# #weight# #length# #surface# #price_min#</b>
|
||||
PriceExpressionEditorHelp4=In product/service price only: <b>#supplier_min_price#</b><br>In supplier prices only: <b>#supplier_quantity# and #supplier_tva_tx#</b>
|
||||
PriceExpressionEditorHelp5=Available global values:
|
||||
PriceMode=Price mode
|
||||
PriceNumeric=Number
|
||||
DefaultPrice=Default price
|
||||
ComposedProductIncDecStock=Increase/Decrease stock on parent change
|
||||
ComposedProduct=Sub-product
|
||||
MinSupplierPrice=Minimun supplier price
|
||||
MinSupplierPrice=Minimum supplier price
|
||||
DynamicPriceConfiguration=Dynamic price configuration
|
||||
GlobalVariables=Global variables
|
||||
GlobalVariableUpdaters=Global variable updaters
|
||||
GlobalVariableUpdaterType0=JSON data
|
||||
GlobalVariableUpdaterHelp0=Parses JSON data from specified URL, VALUE specifies the location of relevant value,
|
||||
GlobalVariableUpdaterHelpFormat0=format is {"URL": "http://example.com/urlofjson", "VALUE": "array1,array2,targetvalue"}
|
||||
GlobalVariableUpdaterType1=WebService data
|
||||
GlobalVariableUpdaterHelp1=Parses WebService data from specified URL, NS specifies the namespace, VALUE specifies the location of relevant value, DATA should contain the data to send and METHOD is the calling WS method
|
||||
GlobalVariableUpdaterHelpFormat1=format is {"URL": "http://example.com/urlofws", "VALUE": "array,targetvalue", "NS": "http://example.com/urlofns", "METHOD": "myWSMethod", "DATA": {"your": "data, "to": "send"}}
|
||||
UpdateInterval=Update interval (minutes)
|
||||
LastUpdated=Last updated
|
||||
CorrectlyUpdated=Correctly updated
|
||||
|
||||
@ -72,6 +72,7 @@ ListSupplierInvoicesAssociatedProject=Lista faktura dobavljača u vezi s projekt
|
||||
ListContractAssociatedProject=Lista ugovora u vezi s projektom
|
||||
ListFichinterAssociatedProject=Lista intervencija u vezi s projektom
|
||||
ListExpenseReportsAssociatedProject=List of expense reports associated with the project
|
||||
ListDonationsAssociatedProject=List of donations associated with the project
|
||||
ListActionsAssociatedProject=Lista događaja u vezi s projektom
|
||||
ActivityOnProjectThisWeek=Aktivnost na projektu ove sedmice
|
||||
ActivityOnProjectThisMonth=Aktivnost na projektu ovog mjeseca
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
RefSending=Referenca pošiljke
|
||||
Sending=Pošiljka
|
||||
Sendings=Pošiljke
|
||||
AllSendings=All Shipments
|
||||
Shipment=Pošiljka
|
||||
Shipments=Pošiljke
|
||||
ShowSending=Show Sending
|
||||
|
||||
@ -43,3 +43,4 @@ ListOfSupplierOrders=List of supplier orders
|
||||
MenuOrdersSupplierToBill=Supplier orders to invoice
|
||||
NbDaysToDelivery=Delivery delay in days
|
||||
DescNbDaysToDelivery=The biggest delay is display among order product list
|
||||
UseDoubleApproval=Use double approval (the second approval will be any user of a defined user group)
|
||||
|
||||
@ -389,6 +389,7 @@ ExtrafieldSeparator=Separador
|
||||
ExtrafieldCheckBox=Casella de verificació
|
||||
ExtrafieldRadio=Botó de selecció excloent
|
||||
ExtrafieldCheckBoxFromList= Checkbox from table
|
||||
ExtrafieldLink=Link to an object
|
||||
ExtrafieldParamHelpselect=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...<br><br>In order to have the list depending on another :<br>1,value1|parent_list_code:parent_key<br>2,value2|parent_list_code:parent_key
|
||||
ExtrafieldParamHelpcheckbox=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...
|
||||
ExtrafieldParamHelpradio=Parameters list have to be like key,value<br><br> for example : <br>1,value1<br>2,value2<br>3,value3<br>...
|
||||
@ -494,6 +495,8 @@ Module500Name=Special expenses (tax, social contributions, dividends)
|
||||
Module500Desc=Management of special expenses like taxes, social contribution, dividends and salaries
|
||||
Module510Name=Salaries
|
||||
Module510Desc=Management of employees salaries and payments
|
||||
Module520Name=Loan
|
||||
Module520Desc=Management of loans
|
||||
Module600Name=Notificacions
|
||||
Module600Desc=Send EMail notifications on some Dolibarr business events to third-party contacts (setup defined on each thirdparty)
|
||||
Module700Name=Donacions
|
||||
@ -508,14 +511,14 @@ Module1400Name=Comptabilitat experta
|
||||
Module1400Desc=Gestió experta de la comptabilitat (doble partida)
|
||||
Module1520Name=Document Generation
|
||||
Module1520Desc=Mass mail document generation
|
||||
Module1780Name=Categories
|
||||
Module1780Desc=Gestió de categories (productes, proveïdors i clients)
|
||||
Module1780Name=Tags/Categories
|
||||
Module1780Desc=Create tags/category (products, customers, suppliers, contacts or members)
|
||||
Module2000Name=Editor WYSIWYG
|
||||
Module2000Desc=Permet l'edició de certes zones de text mitjançant un editor avançat
|
||||
Module2200Name=Dynamic Prices
|
||||
Module2200Desc=Enable the usage of math expressions for prices
|
||||
Module2300Name=Cron
|
||||
Module2300Desc=Gestor de tasques programades
|
||||
Module2300Desc=Scheduled job management
|
||||
Module2400Name=Agenda
|
||||
Module2400Desc=Gestió de l'agenda i de les accions
|
||||
Module2500Name=Gestió Electrònica de Documents
|
||||
@ -714,6 +717,11 @@ Permission510=Read Salaries
|
||||
Permission512=Create/modify salaries
|
||||
Permission514=Delete salaries
|
||||
Permission517=Export salaries
|
||||
Permission520=Read Loans
|
||||
Permission522=Create/modify loans
|
||||
Permission524=Delete loans
|
||||
Permission525=Access loan calculator
|
||||
Permission527=Export loans
|
||||
Permission531=Consultar serveis
|
||||
Permission532=Crear/modificar serveis
|
||||
Permission534=Eliminar serveis
|
||||
@ -746,6 +754,7 @@ Permission1185=Aprovar comandes a proveïdors
|
||||
Permission1186=Enviar comandes a proveïdors
|
||||
Permission1187=Rebre comandes a proveïdors
|
||||
Permission1188=Tancar comandes a proveïdors
|
||||
Permission1190=Approve (second approval) supplier orders
|
||||
Permission1201=Obtenir resultat d'una exportació
|
||||
Permission1202=Crear/modificar exportacions
|
||||
Permission1231=Consultar factures de proveïdors
|
||||
@ -758,10 +767,10 @@ Permission1237=Exporta comandes de proveïdors juntament amb els seus detalls
|
||||
Permission1251=Llançar les importacions en massa a la base de dades (càrrega de dades)
|
||||
Permission1321=Exporta factures a clients, atributs i cobraments
|
||||
Permission1421=Exporta comandes de clients i atributs
|
||||
Permission23001 = Veure les tasques programades
|
||||
Permission23002 = Crear/Modificar les tasques programades
|
||||
Permission23003 = Eliminar les tasques programades
|
||||
Permission23004 = Executar les tasques programades
|
||||
Permission23001=Read Scheduled job
|
||||
Permission23002=Create/update Scheduled job
|
||||
Permission23003=Delete Scheduled job
|
||||
Permission23004=Execute Scheduled job
|
||||
Permission2401=Llegir accions (esdeveniments o tasques) vinculades al seu compte
|
||||
Permission2402=Crear/modificar accions (esdeveniments o tasques) vinculades al seu compte
|
||||
Permission2403=Modificar accions (esdeveniments o tasques) vinculades al seu compte
|
||||
@ -1107,7 +1116,7 @@ ModuleCompanyCodeAquarium=Retorna un codi comptable compost de<br>%s seguit del
|
||||
ModuleCompanyCodePanicum=Retorna un codi comptable buit.
|
||||
ModuleCompanyCodeDigitaria=Retorna un codi comptable compost seguint el codi de tercer. El codi està format per caràcter 'C' en primera posició seguit dels 5 primers caràcters del codi tercer.
|
||||
UseNotifications=Utilitza notificacions
|
||||
NotificationsDesc=EMails notifications feature allows you to silently send automatic mail, for some Dolibarr events. Targets of notifications can be defined:<br>* per third parties contacts (customers or suppliers), one third party at time.<br>* or by setting a global target email address on module setup page.
|
||||
NotificationsDesc=EMails notifications feature allows you to silently send automatic mail, for some Dolibarr events. Targets of notifications can be defined:<br>* per third parties contacts (customers or suppliers), one contact at time.<br>* or by setting global target email addresses in module setup page.
|
||||
ModelModules=Models de documents
|
||||
DocumentModelOdt=Generació des dels documents amb format OpenDocument (Arxiu .ODT OpenOffice, KOffice, TextEdit,...)
|
||||
WatermarkOnDraft=Marca d'aigua en els documents esborrany
|
||||
@ -1557,6 +1566,7 @@ SuppliersSetup=Configuració del mòdul Proveïdors
|
||||
SuppliersCommandModel=Model de comandes a proveïdors complet (logo...)
|
||||
SuppliersInvoiceModel=Model de factures de proveïdors complet (logo...)
|
||||
SuppliersInvoiceNumberingModel=Models de numeració de factures de proveïdor
|
||||
IfSetToYesDontForgetPermission=If set to yes, don't forget to provide permissions to groups or users allowed for the second approval
|
||||
##### GeoIPMaxmind #####
|
||||
GeoIPMaxmindSetup=Configuració del mòdul GeoIP Maxmind
|
||||
PathToGeoIPMaxmindCountryDataFile=Ruta de l'arxiu Maxmind que conté les conversions IP-> País.<br>Exemple: /usr/local/share/GeoIP/GeoIP.dat
|
||||
@ -1601,3 +1611,8 @@ ExpenseReportsSetup=Setup of module Expense Reports
|
||||
TemplatePDFExpenseReports=Document templates to generate expense report document
|
||||
NoModueToManageStockDecrease=No module able to manage automatic stock decrease has been activated. Stock decrease will be done on manual input only.
|
||||
NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only.
|
||||
YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for EMail notifications by enabling and configuring the module "Notification".
|
||||
ListOfNotificationsPerContact=List of notifications per contact*
|
||||
ListOfFixedNotifications=List of fixed notifications
|
||||
GoOntoContactCardToAddMore=Go on the tab "Notifications" of a thirdparty contact to add or remove notifications for contacts/addresses
|
||||
Threshold=Threshold
|
||||
|
||||
@ -48,7 +48,10 @@ InvoiceValidatedInDolibarr=Factura %s validada
|
||||
InvoiceValidatedInDolibarrFromPos=Invoice %s validated from POS
|
||||
InvoiceBackToDraftInDolibarr=Factura %s tornada a borrador
|
||||
InvoiceDeleteDolibarr=Factura %s eliminada
|
||||
OrderValidatedInDolibarr= Comanda %s validada
|
||||
OrderValidatedInDolibarr=Comanda %s validada
|
||||
OrderDeliveredInDolibarr=Order %s classified delivered
|
||||
OrderCanceledInDolibarr=Commanda %s anul·lada
|
||||
OrderBilledInDolibarr=Order %s classified billed
|
||||
OrderApprovedInDolibarr=Comanda %s aprovada
|
||||
OrderRefusedInDolibarr=Order %s refused
|
||||
OrderBackToDraftInDolibarr=Comanda %s tordada a borrador
|
||||
@ -91,3 +94,5 @@ WorkingTimeRange=Working time range
|
||||
WorkingDaysRange=Working days range
|
||||
AddEvent=Create event
|
||||
MyAvailability=My availability
|
||||
ActionType=Event type
|
||||
DateActionBegin=Start event date
|
||||
|
||||
@ -294,6 +294,8 @@ TotalOfTwoDiscountMustEqualsOriginal=La suma de l'import dels 2 nous descomptes
|
||||
ConfirmRemoveDiscount=Esteu segur de voler eliminar aquest descompte?
|
||||
RelatedBill=Factura associada
|
||||
RelatedBills=Factures associades
|
||||
RelatedCustomerInvoices=Related customer invoices
|
||||
RelatedSupplierInvoices=Related supplier invoices
|
||||
LatestRelatedBill=Latest related invoice
|
||||
WarningBillExist=Warning, one or more invoice already exist
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user