Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop

This commit is contained in:
Laurent Destailleur 2014-08-04 10:55:09 +02:00
commit 96362b40e4
308 changed files with 7590 additions and 7035 deletions

View File

@ -164,6 +164,12 @@ source_file = htdocs/langs/en_US/ldap.lang
source_lang = en_US
type = MOZILLAPROPERTIES
[dolibarr.link]
file_filter = htdocs/langs/<lang>/link.lang
source_file = htdocs/langs/en_US/link.lang
source_lang = en_US
type = MOZILLAPROPERTIES
[dolibarr.mailmanspip]
file_filter = htdocs/langs/<lang>/mailmanspip.lang
source_file = htdocs/langs/en_US/mailmanspip.lang

View File

@ -5,6 +5,8 @@ English Dolibarr ChangeLog
***** ChangeLog for 3.7 compared to 3.6.* *****
For users:
- New: Supervisor is now visible into user list.
- New: Add user of creation and validation on invoice export.
- New: Add info page about browser.
- New: Enable feature developed for 3.6 we forgot to enabled: Adding prefix
on uploaded file names.

View File

@ -131,19 +131,19 @@ case "$1" in
setup_empty_conf
else
# File already exist. We add params not found.
echo Add new params to overwrite path to use shared libraries/fonts
grep -q -c "dolibarr_lib_ADODB_PATH" $config || [ ! -d "/usr/share/php/adodb" ] || echo "<?php \$dolibarr_lib_ADODB_PATH='/usr/share/php/adodb'; ?>" >> $config
grep -q -c "dolibarr_lib_FPDI_PATH" $config || [ ! -d "/usr/share/php/fpdi" ] || echo "<?php \$dolibarr_lib_FPDI_PATH='/usr/share/php/fpdi'; ?>" >> $config
#grep -q -c "dolibarr_lib_GEOIP_PATH" $config || echo "<?php \$dolibarr_lib_GEOIP_PATH=''; ?>" >> $config
grep -q -c "dolibarr_lib_NUSOAP_PATH" $config || [ ! -d "/usr/share/php/nusoap" ] || echo "<?php \$dolibarr_lib_NUSOAP_PATH='/usr/share/php/nusoap'; ?>" >> $config
grep -q -c "dolibarr_lib_ODTPHP_PATHTOPCLZIP" $config || [ ! -d "/usr/share/php/libphp-pclzip" ] || echo "<?php \$dolibarr_lib_ODTPHP_PATHTOPCLZIP='/usr/share/php/libphp-pclzip'; ?>" >> $config
#grep -q -c "dolibarr_lib_PHPEXCEL_PATH" $config || echo "<?php \$dolibarr_lib_PHPEXCEL_PATH=''; ?>" >> $config
#grep -q -c "dolibarr_lib_TCPDF_PATH" $config || echo "<?php \$dolibarr_lib_TCPDF_PATH=''; ?>" >> $config
grep -q -c "dolibarr_js_CKEDITOR" $config || [ ! -d "/usr/share/javascript/ckeditor" ] || echo "<?php \$dolibarr_js_CKEDITOR='/javascript/ckeditor'; ?>" >> $config
grep -q -c "dolibarr_js_JQUERY" $config || [ ! -d "/usr/share/javascript/jquery" ] || echo "<?php \$dolibarr_js_JQUERY='/javascript/jquery'; ?>" >> $config
grep -q -c "dolibarr_js_JQUERY_UI" $config || [ ! -d "/usr/share/javascript/jquery-ui" ] || echo "<?php \$dolibarr_js_JQUERY_UI='/javascript/jquery-ui'; ?>" >> $config
grep -q -c "dolibarr_js_JQUERY_FLOT" $config || [ ! -d "/usr/share/javascript/flot" ] || echo "<?php \$dolibarr_js_JQUERY_FLOT='/javascript/flot'; ?>" >> $config
grep -q -c "dolibarr_font_DOL_DEFAULT_TTF_BOLD" $config || echo "<?php \$dolibarr_font_DOL_DEFAULT_TTF_BOLD='/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf'; ?>" >> $config
#echo Add new params to overwrite path to use shared libraries/fonts
#grep -q -c "dolibarr_lib_ADODB_PATH" $config || [ ! -d "/usr/share/php/adodb" ] || echo "<?php \$dolibarr_lib_ADODB_PATH='/usr/share/php/adodb'; ?>" >> $config
#grep -q -c "dolibarr_lib_FPDI_PATH" $config || [ ! -d "/usr/share/php/fpdi" ] || echo "<?php \$dolibarr_lib_FPDI_PATH='/usr/share/php/fpdi'; ?>" >> $config
##grep -q -c "dolibarr_lib_GEOIP_PATH" $config || echo "<?php \$dolibarr_lib_GEOIP_PATH=''; ?>" >> $config
#grep -q -c "dolibarr_lib_NUSOAP_PATH" $config || [ ! -d "/usr/share/php/nusoap" ] || echo "<?php \$dolibarr_lib_NUSOAP_PATH='/usr/share/php/nusoap'; ?>" >> $config
#grep -q -c "dolibarr_lib_ODTPHP_PATHTOPCLZIP" $config || [ ! -d "/usr/share/php/libphp-pclzip" ] || echo "<?php \$dolibarr_lib_ODTPHP_PATHTOPCLZIP='/usr/share/php/libphp-pclzip'; ?>" >> $config
##grep -q -c "dolibarr_lib_PHPEXCEL_PATH" $config || echo "<?php \$dolibarr_lib_PHPEXCEL_PATH=''; ?>" >> $config
##grep -q -c "dolibarr_lib_TCPDF_PATH" $config || echo "<?php \$dolibarr_lib_TCPDF_PATH=''; ?>" >> $config
#grep -q -c "dolibarr_js_CKEDITOR" $config || [ ! -d "/usr/share/javascript/ckeditor" ] || echo "<?php \$dolibarr_js_CKEDITOR='/javascript/ckeditor'; ?>" >> $config
#grep -q -c "dolibarr_js_JQUERY" $config || [ ! -d "/usr/share/javascript/jquery" ] || echo "<?php \$dolibarr_js_JQUERY='/javascript/jquery'; ?>" >> $config
#grep -q -c "dolibarr_js_JQUERY_UI" $config || [ ! -d "/usr/share/javascript/jquery-ui" ] || echo "<?php \$dolibarr_js_JQUERY_UI='/javascript/jquery-ui'; ?>" >> $config
#grep -q -c "dolibarr_js_JQUERY_FLOT" $config || [ ! -d "/usr/share/javascript/flot" ] || echo "<?php \$dolibarr_js_JQUERY_FLOT='/javascript/flot'; ?>" >> $config
#grep -q -c "dolibarr_font_DOL_DEFAULT_TTF_BOLD" $config || echo "<?php \$dolibarr_font_DOL_DEFAULT_TTF_BOLD='/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf'; ?>" >> $config
fi
db_get dolibarr/reconfigure-webserver

View File

@ -44,6 +44,8 @@ In htdocs/includes/tcpdf/tcpdf.php
- protected $default_monospaced_font = 'courier';
+ protected $default_monospaced_font = 'freemono';
* Renamed getmypid into dol_getmypid().
JSGANTT:
--------

View File

@ -94,7 +94,7 @@ while ($i < GEN_NUMBER_FACTURE && $result >= 0)
print "Invoice ".$i." for socid ".$socid;
$facture = new Facture($db, $socids[$socid]);
$facture = new Facture($db);
$facture->date = time();
$facture->cond_reglement_id = 3;
$facture->mode_reglement_id = 3;

View File

@ -122,7 +122,7 @@ while ($i < GEN_NUMBER_PROPAL && $result >= 0)
$soc = new Societe($db);
$propal = new Propal($db, $socids[$socid]);
$propal = new Propal($db);
$obj = $conf->global->PROPALE_ADDON;
$modPropale = new $obj;
@ -130,6 +130,7 @@ while ($i < GEN_NUMBER_PROPAL && $result >= 0)
$propal->ref = $numpr;
$propal->contactid = $contids[$socids[$socid]][0];
$propal->socid = $socids[$socid];
$propal->datep = time();
$propal->cond_reglement_id = 3;
$propal->mode_reglement_id = 3;

View File

@ -187,7 +187,7 @@ class Adherent extends CommonObject
if (dol_textishtml($text,1)) $msgishtml = 1;
$infos='';
if ($this->civility_id) $infos.= $langs->transnoentities("UserTitle").": ".$this->getCivilityLabel(1)."\n";
if ($this->civility_id) $infos.= $langs->transnoentities("UserTitle").": ".$this->getCivilityLabel()."\n";
$infos.= $langs->transnoentities("id").": ".$this->id."\n";
$infos.= $langs->transnoentities("Lastname").": ".$this->lastname."\n";
$infos.= $langs->transnoentities("Firstname").": ".$this->firstname."\n";
@ -210,7 +210,7 @@ class Adherent extends CommonObject
$substitutionarray=array(
'%DOL_MAIN_URL_ROOT%'=>DOL_MAIN_URL_ROOT,
'%ID%'=>$msgishtml?dol_htmlentitiesbr($this->id):$this->id,
'%CIVILITY%'=>$this->getCivilityLabel($msgishtml?0:1),
'%CIVILITY%'=>$this->getCivilityLabel(),
'%FIRSTNAME%'=>$msgishtml?dol_htmlentitiesbr($this->firstname):$this->firstname,
'%LASTNAME%'=>$msgishtml?dol_htmlentitiesbr($this->lastname):$this->lastname,
'%FULLNAME%'=>$msgishtml?dol_htmlentitiesbr($this->getFullName($langs)):$this->getFullName($langs),
@ -350,7 +350,7 @@ class Adherent extends CommonObject
{
// Call trigger
$result=$this->call_trigger('MEMBER_CREATE',$user);
if ($result < 0) { $error++; }
if ($result < 0) { $error++; }
// End call triggers
}
@ -599,7 +599,7 @@ class Adherent extends CommonObject
{
// Call trigger
$result=$this->call_trigger('MEMBER_MODIFY',$user);
if ($result < 0) { $error++; }
if ($result < 0) { $error++; }
// End call triggers
}
}
@ -774,7 +774,7 @@ class Adherent extends CommonObject
{
// Call trigger
$result=$this->call_trigger('MEMBER_DELETE',$user);
if ($result < 0) { $error++; }
if ($result < 0) { $error++; }
// End call triggers
}
@ -830,7 +830,7 @@ class Adherent extends CommonObject
}
$this->db->begin();
// Mise a jour
$sql = "UPDATE ".MAIN_DB_PREFIX."adherent SET pass = '".$this->db->escape($password_indatabase)."'";
$sql.= " WHERE rowid = ".$this->id;
@ -877,7 +877,7 @@ class Adherent extends CommonObject
{
// Call trigger
$result=$this->call_trigger('MEMBER_NEW_PASSWORD',$user);
if ($result < 0) { $error++; $this->db->rollback(); return -1; }
if ($result < 0) { $error++; $this->db->rollback(); return -1; }
// End call triggers
}
@ -1292,7 +1292,7 @@ class Adherent extends CommonObject
// Call trigger
$result=$this->call_trigger('MEMBER_SUBSCRIPTION',$user);
if ($result < 0) { $error++; }
if ($result < 0) { $error++; }
// End call triggers
}
@ -1351,7 +1351,7 @@ class Adherent extends CommonObject
// Call trigger
$result=$this->call_trigger('MEMBER_VALIDATE',$user);
if ($result < 0) { $error++; $this->db->rollback(); return -1; }
if ($result < 0) { $error++; $this->db->rollback(); return -1; }
// End call triggers
$this->db->commit();
@ -1399,7 +1399,7 @@ class Adherent extends CommonObject
// Call trigger
$result=$this->call_trigger('MEMBER_RESILIATE',$user);
if ($result < 0) { $error++; $this->db->rollback(); return -1; }
if ($result < 0) { $error++; $this->db->rollback(); return -1; }
// End call triggers
$this->db->commit();
@ -1530,7 +1530,7 @@ class Adherent extends CommonObject
/**
* Return civility label of a member
*
* @return string Translated name of civility
* @return string Translated name of civility (translated with transnoentitiesnoconv)
*/
function getCivilityLabel()
{

View File

@ -35,8 +35,9 @@ if (! $user->admin) accessforbidden();
$rowid = GETPOST('rowid','int');
$action = GETPOST('action','alpha');
// Define possible position of boxes
$pos_name = getStaticMember('InfoBox','listOfPages');
$pos_name = InfoBox::getListOfPagesForBoxes();
$boxes = array();

View File

@ -818,7 +818,7 @@ if ($id)
if ($valuetoshow != '')
{
print '<td align="'.$align.'">';
if (! empty($tabhelp[$id][$value]) && preg_match('/http:/i',$tabhelp[$id][$value])) print '<a href="'.$tabhelp[$id][$value].'" target="_blank">'.$valuetoshow.'</a>';
if (! empty($tabhelp[$id][$value]) && preg_match('/^http(s*):/i',$tabhelp[$id][$value])) print '<a href="'.$tabhelp[$id][$value].'" target="_blank">'.$valuetoshow.' '.img_help(1,$valuetoshow).'</a>';
else if (! empty($tabhelp[$id][$value])) print $form->textwithpicto($valuetoshow,$tabhelp[$id][$value]);
else print $valuetoshow;
print '</td>';

View File

@ -44,7 +44,7 @@ print_fiche_titre($langs->trans("InfoDatabase"),'','setup');
// Database
print '<table class="noborder" width="100%">';
print '<tr class="liste_titre"><td colspan="2">'.$langs->trans("Database").'</td></tr>'."\n";
print '<tr '.$bc[0].'><td width="300">'.$langs->trans("Version").'</td><td>'.$db::label.' '.$db->getVersion().'</td></tr>'."\n";
print '<tr '.$bc[0].'><td width="300">'.$langs->trans("Version").'</td><td>'.$db::LABEL.' '.$db->getVersion().'</td></tr>'."\n";
print '<tr '.$bc[1].'><td width="300">'.$langs->trans("DatabaseServer").'</td><td>'.$conf->db->host.'</td></tr>'."\n";
print '<tr '.$bc[0].'><td width="300">'.$langs->trans("DatabasePort").'</td><td>'.(empty($conf->db->port)?$langs->trans("Default"):$conf->db->port).'</td></tr>'."\n";
print '<tr '.$bc[1].'><td width="300">'.$langs->trans("DatabaseName").'</td><td>'.$conf->db->name.'</td></tr>'."\n";

View File

@ -86,7 +86,7 @@ print "<br>\n";
// Database
print '<table class="noborder" width="100%">';
print "<tr class=\"liste_titre\"><td colspan=\"2\">".$langs->trans("Database")."</td></tr>\n";
$dblabel=$db::label;
$dblabel=$db::LABEL;
$dbversion=$db->getVersion();
print "<tr $bc[0]><td width=\"280\">".$langs->trans("Version")."</td><td>" .$dblabel." ".$dbversion."</td></tr>\n";
print '</table>';

View File

@ -65,7 +65,7 @@ if ($action == 'delete')
$form=new Form($db);
$formfile = new FormFile($db);
$label=$db::label;
$label=$db::LABEL;
$help_url='EN:Backups|FR:Sauvegardes|ES:Copias_de_seguridad';
llxHeader('','',$help_url);

View File

@ -38,7 +38,7 @@ $showpass=GETPOST('showpass');
* View
*/
$label=$db::label;
$label=$db::LABEL;
$help_url='EN:Restores|FR:Restaurations|ES:Restauraciones';
llxHeader('','',$help_url);

View File

@ -416,7 +416,7 @@ function backup_tables($outputfile, $tables='*')
// Print headers and global mysql config vars
$sqlhead = '';
$sqlhead .= "-- ".$db::label." dump via php
$sqlhead .= "-- ".$db::LABEL." dump via php
--
-- Host: ".$db->db->host_info." Database: ".$db->database_name."
-- ------------------------------------------------------
@ -464,11 +464,11 @@ function backup_tables($outputfile, $tables='*')
fwrite($handle, "\n--\n-- Dumping data for table `".$table."`\n--\n");
if (!GETPOST("nobin_nolocks")) fwrite($handle, "LOCK TABLES `".$table."` WRITE;\n"); // Lock the table before inserting data (when the data will be imported back)
if (GETPOST("nobin_disable_fk")) fwrite($handle, "ALTER TABLE `".$table."` DISABLE KEYS;\n");
$sql='SELECT * FROM '.$table;
$result = $db->query($sql);
$num_fields = $db->num_rows($result);
while($row = $db->fetch_row($result))
while($row = $db->fetch_row($result))
{
// For each row of data we print a line of INSERT
fwrite($handle,'INSERT '.$delayed.$ignore.'INTO `'.$table.'` VALUES (');
@ -497,7 +497,7 @@ function backup_tables($outputfile, $tables='*')
fwrite($handle,"\n\n\n");
}
}
/* Backup Procedure structure*/
/*
$result = $db->query('SHOW PROCEDURE STATUS');

View File

@ -13,7 +13,6 @@ support/
support/index.php
support/online.php
support/background.png
support/default.css
support/dolibarr_logo2.png
support/headbg.jpg

View File

@ -87,7 +87,7 @@ class Categorie extends CommonObject
else
{
if ($label) $sql.= " WHERE label = '".$this->db->escape($label)."' AND entity=".$conf->entity;;
if ($label) $sql.= " WHERE label = '".$this->db->escape($label)."' AND entity IN (".getEntity('category',1).")";
}
dol_syslog(get_class($this)."::fetch", LOG_DEBUG);

View File

@ -514,18 +514,18 @@ if ($action == 'create')
// Location
print '<tr><td>'.$langs->trans("Location").'</td><td colspan="3"><input type="text" name="location" size="50" value="'.$object->location.'"></td></tr>';
// Assigned to
$var=false;
print '<tr><td class="nowrap">'.$langs->trans("ActionAffectedTo").'</td><td>';
$form->select_users(GETPOST("affectedto")?GETPOST("affectedto"):(! empty($object->usertodo->id) && $object->usertodo->id > 0 ? $object->usertodo->id : $user->id),'affectedto',1);
print '</td></tr>';
print '</table>';
print '<br><br>';
print '<table class="border" width="100%">';
// Assigned to
$var=false;
print '<tr><td width="30%" class="nowrap">'.$langs->trans("ActionAffectedTo").'</td><td>';
$form->select_users(GETPOST("affectedto")?GETPOST("affectedto"):(! empty($object->usertodo->id) && $object->usertodo->id > 0 ? $object->usertodo->id : $user->id),'affectedto',1);
print '</td></tr>';
// Busy
print '<tr><td width="30%" class="nowrap">'.$langs->trans("Busy").'</td><td>';
print '<input id="transparency" type="checkbox" name="transparency"'.(((! isset($_GET['transparency']) && ! isset($_POST['transparency'])) || GETPOST('transparency'))?' checked="checked"':'').'>';
@ -764,15 +764,15 @@ if ($id > 0)
// Location
print '<tr><td>'.$langs->trans("Location").'</td><td colspan="3"><input type="text" name="location" size="50" value="'.$object->location.'"></td></tr>';
print '</table><br><br><table class="border" width="100%">';
// Assigned to
print '<tr><td width="30%" class="nowrap">'.$langs->trans("ActionAffectedTo").'</td><td colspan="3">';
print '<tr><td class="nowrap">'.$langs->trans("ActionAffectedTo").'</td><td colspan="3">';
print $form->select_dolusers($object->usertodo->id>0?$object->usertodo->id:-1,'affectedto',1);
print '</td></tr>';
print '</table><br><br><table class="border" width="100%">';
// Busy
print '<tr><td class="nowrap">'.$langs->trans("Busy").'</td><td>';
print '<tr><td width="30%" class="nowrap">'.$langs->trans("Busy").'</td><td>';
print '<input id="transparency" type="checkbox" name="transparency"'.($object->transparency?' checked="checked"':'').'">';
print '</td></tr>';
@ -939,15 +939,15 @@ if ($id > 0)
// Location
print '<tr><td>'.$langs->trans("Location").'</td><td colspan="2">'.$object->location.'</td></tr>';
print '</table><br><br><table class="border" width="100%">';
// Assigned to
print '<tr><td width="30%" class="nowrap">'.$langs->trans("ActionAffectedTo").'</td><td colspan="3">';
if ($object->usertodo->id > 0) print $object->usertodo->getNomUrl(1);
print '</td></tr>';
print '</table><br><br><table class="border" width="100%">';
// Busy
print '<tr><td class="nowrap">'.$langs->trans("Busy").'</td><td colspan="3">';
print '<tr><td width="30%" class="nowrap">'.$langs->trans("Busy").'</td><td colspan="3">';
if ($object->usertodo->id > 0) print yn(($object->transparency > 0)?1:0); // We show nothing if event is assigned to nobody
print '</td></tr>';

View File

@ -9,6 +9,7 @@
* Copyright (C) 2010-2011 Philippe Grand <philippe.grand@atoo-net.com>
* Copyright (C) 2012-2013 Christophe Battarel <christophe.battarel@altairis.fr>
* Copyright (C) 2013-2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Ferran Marcet <fmarcet@2byte.es>
*
* 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
@ -151,7 +152,7 @@ else if ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->
$outputlangs = $langs;
if (! empty($conf->global->MAIN_MULTILANGS)) {
$outputlangs = new Translate("", $conf);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->client->default_lang);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->thirdparty->default_lang);
$outputlangs->setDefaultLang($newlang);
}
$ret = $object->fetch($id); // Reload to get new records
@ -171,7 +172,7 @@ else if ($action == 'confirm_validate' && $confirm == 'yes' && $user->rights->pr
$outputlangs = $langs;
if (! empty($conf->global->MAIN_MULTILANGS)) {
$outputlangs = new Translate("", $conf);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->client->default_lang);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->thirdparty->default_lang);
$outputlangs->setDefaultLang($newlang);
}
$ret = $object->fetch($id); // Reload to get new records
@ -461,7 +462,7 @@ else if ($action == 'add' && $user->rights->propal->creer) {
$outputlangs = $langs;
if (! empty($conf->global->MAIN_MULTILANGS)) {
$outputlangs = new Translate("", $conf);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->client->default_lang);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->thirdparty->default_lang);
$outputlangs->setDefaultLang($newlang);
}
$ret = $object->fetch($id); // Reload to get new records
@ -548,11 +549,11 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G
// Recipient was provided from combo list
if ($_POST ['receiver'] == 'thirdparty') // Id of third party
{
$sendto = $object->client->email;
$sendto = $object->thirdparty->email;
$sendtoid = 0;
} else // Id du contact
{
$sendto = $object->client->contact_get_property($_POST ['receiver'], 'email');
$sendto = $object->thirdparty->contact_get_property($_POST ['receiver'], 'email');
$sendtoid = $_POST ['receiver'];
}
}
@ -656,7 +657,7 @@ if ($action == 'modif' && $user->rights->propal->creer) {
$outputlangs = $langs;
if (! empty($conf->global->MAIN_MULTILANGS)) {
$outputlangs = new Translate("", $conf);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->client->default_lang);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->thirdparty->default_lang);
$outputlangs->setDefaultLang($newlang);
}
$ret = $object->fetch($id); // Reload to get new records
@ -742,18 +743,22 @@ else if ($action == 'addline' && $user->rights->propal->creer) {
$label = ((GETPOST('product_label') && GETPOST('product_label') != $prod->label) ? GETPOST('product_label') : '');
// If prices fields are update
$tva_tx = get_default_tva($mysoc, $object->client, $prod->id);
$tva_npr = get_default_npr($mysoc, $object->client, $prod->id);
$tva_tx = get_default_tva($mysoc, $object->thirdparty, $prod->id);
$tva_npr = get_default_npr($mysoc, $object->thirdparty, $prod->id);
$pu_ht = $prod->price;
$pu_ttc = $prod->price_ttc;
$price_min = $prod->price_min;
$price_base_type = $prod->price_base_type;
// On defini prix unitaire
if (! empty($conf->global->PRODUIT_MULTIPRICES) && $object->client->price_level)
if (! empty($conf->global->PRODUIT_MULTIPRICES) && $object->thirdparty->price_level)
{
$pu_ht = $prod->multiprices [$object->client->price_level];
$pu_ttc = $prod->multiprices_ttc [$object->client->price_level];
$price_min = $prod->multiprices_min [$object->client->price_level];
$price_base_type = $prod->multiprices_base_type [$object->client->price_level];
$tva_tx=$prod->multiprices_tva_tx[$object->client->price_level];
$tva_npr=$prod->multiprices_recuperableonly[$object->client->price_level];
$pu_ht = $prod->multiprices [$object->thirdparty->price_level];
$pu_ttc = $prod->multiprices_ttc [$object->thirdparty->price_level];
$price_min = $prod->multiprices_min [$object->thirdparty->price_level];
$price_base_type = $prod->multiprices_base_type [$object->thirdparty->price_level];
$tva_tx=$prod->multiprices_tva_tx[$object->thirdparty->price_level];
$tva_npr=$prod->multiprices_recuperableonly[$object->thirdparty->price_level];
}
elseif (! empty($conf->global->PRODUIT_CUSTOMER_PRICES))
{
@ -761,12 +766,11 @@ else if ($action == 'addline' && $user->rights->propal->creer) {
$prodcustprice = new Productcustomerprice($db);
$filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->client->id);
$filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->thirdparty->id);
$result = $prodcustprice->fetch_all('', '', 0, 0, $filter);
if ($result) {
if (count($prodcustprice->lines) > 0) {
$found = true;
$pu_ht = price($prodcustprice->lines [0]->price);
$pu_ttc = price($prodcustprice->lines [0]->price_ttc);
$price_base_type = $prodcustprice->lines [0]->price_base_type;
@ -774,13 +778,6 @@ else if ($action == 'addline' && $user->rights->propal->creer) {
}
}
}
else
{
$pu_ht = $prod->price;
$pu_ttc = $prod->price_ttc;
$price_min = $prod->price_min;
$price_base_type = $prod->price_base_type;
}
// if price ht is forced (ie: calculated by margin rate and cost price)
if (! empty($price_ht)) {
@ -807,7 +804,7 @@ else if ($action == 'addline' && $user->rights->propal->creer) {
if (empty($newlang) && GETPOST('lang_id'))
$newlang = GETPOST('lang_id');
if (empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -852,8 +849,8 @@ else if ($action == 'addline' && $user->rights->propal->creer) {
$date_end = dol_mktime(0, 0, 0, GETPOST('date_end' . $predef . 'month'), GETPOST('date_end' . $predef . 'day'), GETPOST('date_end' . $predef . 'year'));
// Local Taxes
$localtax1_tx = get_localtax($tva_tx, 1, $object->client);
$localtax2_tx = get_localtax($tva_tx, 2, $object->client);
$localtax1_tx = get_localtax($tva_tx, 1, $object->thirdparty);
$localtax2_tx = get_localtax($tva_tx, 2, $object->thirdparty);
$info_bits = 0;
if ($tva_npr)
@ -874,7 +871,7 @@ else if ($action == 'addline' && $user->rights->propal->creer) {
$outputlangs = $langs;
if (! empty($conf->global->MAIN_MULTILANGS)) {
$outputlangs = new Translate("", $conf);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->client->default_lang);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->thirdparty->default_lang);
$outputlangs->setDefaultLang($newlang);
}
$ret = $object->fetch($id); // Reload to get new records
@ -933,8 +930,8 @@ else if ($action == 'updateligne' && $user->rights->propal->creer && GETPOST('sa
// Define vat_rate
$vat_rate = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0);
$vat_rate = str_replace('*', '', $vat_rate);
$localtax1_rate = get_localtax($vat_rate, 1, $object->client);
$localtax2_rate = get_localtax($vat_rate, 2, $object->client);
$localtax1_rate = get_localtax($vat_rate, 1, $object->thirdparty);
$localtax2_rate = get_localtax($vat_rate, 2, $object->thirdparty);
$pu_ht = GETPOST('price_ht');
// Add buying price
@ -969,8 +966,8 @@ else if ($action == 'updateligne' && $user->rights->propal->creer && GETPOST('sa
$type = $product->type;
$price_min = $product->price_min;
if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->client->price_level))
$price_min = $product->multiprices_min [$object->client->price_level];
if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->thirdparty->price_level))
$price_min = $product->multiprices_min [$object->thirdparty->price_level];
$label = ((GETPOST('update_label') && GETPOST('product_label')) ? GETPOST('product_label') : '');
@ -1002,7 +999,7 @@ else if ($action == 'updateligne' && $user->rights->propal->creer && GETPOST('sa
$outputlangs = $langs;
if (! empty($conf->global->MAIN_MULTILANGS)) {
$outputlangs = new Translate("", $conf);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->client->default_lang);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->thirdparty->default_lang);
$outputlangs->setDefaultLang($newlang);
}
$ret = $object->fetch($id); // Reload to get new records
@ -1044,7 +1041,7 @@ else if ($action == 'builddoc' && $user->rights->propal->creer) {
$outputlangs = $langs;
if (! empty($conf->global->MAIN_MULTILANGS)) {
$outputlangs = new Translate("", $conf);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->client->default_lang);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->thirdparty->default_lang);
$outputlangs->setDefaultLang($newlang);
}
$ret = $object->fetch($id); // Reload to get new records
@ -1130,7 +1127,7 @@ else if ($action == 'up' && $user->rights->propal->creer) {
$outputlangs = $langs;
if (! empty($conf->global->MAIN_MULTILANGS)) {
$outputlangs = new Translate("", $conf);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->client->default_lang);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->thirdparty->default_lang);
$outputlangs->setDefaultLang($newlang);
}
$ret = $object->fetch($id); // Reload to get new records
@ -1149,7 +1146,7 @@ else if ($action == 'down' && $user->rights->propal->creer) {
$outputlangs = $langs;
if (! empty($conf->global->MAIN_MULTILANGS)) {
$outputlangs = new Translate("", $conf);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->client->default_lang);
$newlang = (GETPOST('lang_id') ? GETPOST('lang_id') : $object->thirdparty->default_lang);
$outputlangs->setDefaultLang($newlang);
}
$ret = $object->fetch($id); // Reload to get new records
@ -2302,7 +2299,7 @@ if ($action == 'create') {
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (!empty($newlang))
{

View File

@ -139,7 +139,7 @@ class Commande extends CommonOrder
{
$file = $conf->global->COMMANDE_ADDON.".php";
$classname = $conf->global->COMMANDE_ADDON;
// Include file with class
foreach ($conf->file->dol_document_root as $dirroot)
{
@ -262,7 +262,7 @@ class Commande extends CommonOrder
// We decrement stock of product (and sub-products)
$result=$mouvP->livraison($user, $this->lines[$i]->fk_product, $idwarehouse, $this->lines[$i]->qty, $this->lines[$i]->subprice, $langs->trans("OrderValidatedInDolibarr",$num));
if ($result < 0)
{
{
$error++;
$this->error=$mouvP->error;
}
@ -305,7 +305,7 @@ class Commande extends CommonOrder
{
// Call trigger
$result=$this->call_trigger('ORDER_VALIDATE',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
}
@ -436,7 +436,7 @@ class Commande extends CommonOrder
{
// Call trigger
$result=$this->call_trigger('ORDER_REOPEN',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
}
else
@ -495,9 +495,9 @@ class Commande extends CommonOrder
{
// Call trigger
$result=$this->call_trigger('ORDER_CLOSE',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
if (! $error)
{
$this->statut=3;
@ -558,7 +558,7 @@ class Commande extends CommonOrder
$mouvP = new MouvementStock($this->db);
// We increment stock of product (and sub-products)
$result=$mouvP->reception($user, $this->lines[$i]->fk_product, $idwarehouse, $this->lines[$i]->qty, $this->lines[$i]->subprice, $langs->trans("OrderCanceledInDolibarr",$this->ref));
if ($result < 0)
if ($result < 0)
{
$error++;
$this->error=$mouvP->error;
@ -572,7 +572,7 @@ class Commande extends CommonOrder
{
// Call trigger
$result=$this->call_trigger('ORDER_CANCEL',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
}
@ -764,9 +764,10 @@ class Commande extends CommonOrder
if ($origin == 'propal' && $origin_id)
{
// On recupere les differents contact interne et externe
$prop = new Propal($this->db, $this->socid, $origin_id);
$prop = new Propal($this->db);
$prop->fetch($origin_id);
// On recupere le commercial suivi propale
// We get ids of sales representatives of proposal
$this->userid = $prop->getIdcontact('internal', 'SALESREPFOLL');
if ($this->userid)
@ -775,7 +776,7 @@ class Commande extends CommonOrder
$this->add_contact($this->userid[0], 'SALESREPFOLL', 'internal');
}
// On recupere le contact client suivi propale
// We get ids of customer follower of proposal
$this->contactid = $prop->getIdcontact('external', 'CUSTOMER');
if ($this->contactid)
@ -813,7 +814,7 @@ class Commande extends CommonOrder
{
// Call trigger
$result=$this->call_trigger('ORDER_CREATE',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
}
@ -908,7 +909,7 @@ class Commande extends CommonOrder
// Call trigger
$result=$this->call_trigger('ORDER_CLONE',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
}
@ -2228,7 +2229,7 @@ class Commande extends CommonOrder
{
// Call trigger
$result=$this->call_trigger('ORDER_CLASSIFY_BILLED',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
if (! $error)
@ -2447,7 +2448,7 @@ class Commande extends CommonOrder
{
// Call trigger
$result=$this->call_trigger('ORDER_DELETE',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
}
@ -3189,7 +3190,7 @@ class OrderLine extends CommonOrderLine
// Call trigger
$result=$this->call_trigger('LINEORDER_DELETE',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
if (!$error) {
@ -3312,7 +3313,7 @@ class OrderLine extends CommonOrderLine
{
// Call trigger
$result=$this->call_trigger('LINEORDER_INSERT',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
}
@ -3427,7 +3428,7 @@ class OrderLine extends CommonOrderLine
{
// Call trigger
$result=$this->call_trigger('LINEORDER_UPDATE',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
}

View File

@ -9,6 +9,7 @@
* Copyright (C) 2012-2013 Christophe Battarel <christophe.battarel@altairis.fr>
* Copyright (C) 2012 Marcos García <marcosgdf@gmail.com>
* Copyright (C) 2013 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Ferran Marcet <fmarcet@2byte.es>
*
* 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
@ -170,7 +171,7 @@ else if ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id'))
$newlang = GETPOST('lang_id');
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -476,7 +477,7 @@ else if ($action == 'setconditions' && $user->rights->commande->creer) {
$outputlangs = $langs;
$newlang = GETPOST('lang_id', 'alpha');
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -581,18 +582,22 @@ else if ($action == 'addline' && $user->rights->commande->creer) {
$label = ((GETPOST('product_label') && GETPOST('product_label') != $prod->label) ? GETPOST('product_label') : '');
// Update if prices fields are defined
$tva_tx = get_default_tva($mysoc, $object->client, $prod->id);
$tva_npr = get_default_npr($mysoc, $object->client, $prod->id);
$tva_tx = get_default_tva($mysoc, $object->thirdparty, $prod->id);
$tva_npr = get_default_npr($mysoc, $object->thirdparty, $prod->id);
$pu_ht = $prod->price;
$pu_ttc = $prod->price_ttc;
$price_min = $prod->price_min;
$price_base_type = $prod->price_base_type;
// multiprix
if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->client->price_level))
if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->thirdparty->price_level))
{
$pu_ht = $prod->multiprices [$object->client->price_level];
$pu_ttc = $prod->multiprices_ttc [$object->client->price_level];
$price_min = $prod->multiprices_min [$object->client->price_level];
$price_base_type = $prod->multiprices_base_type [$object->client->price_level];
$tva_tx=$prod->multiprices_tva_tx[$object->client->price_level];
$tva_npr=$prod->multiprices_recuperableonly[$object->client->price_level];
$pu_ht = $prod->multiprices [$object->thirdparty->price_level];
$pu_ttc = $prod->multiprices_ttc [$object->thirdparty->price_level];
$price_min = $prod->multiprices_min [$object->thirdparty->price_level];
$price_base_type = $prod->multiprices_base_type [$object->thirdparty->price_level];
$tva_tx=$prod->multiprices_tva_tx[$object->thirdparty->price_level];
$tva_npr=$prod->multiprices_recuperableonly[$object->thirdparty->price_level];
}
elseif (! empty($conf->global->PRODUIT_CUSTOMER_PRICES))
{
@ -600,12 +605,11 @@ else if ($action == 'addline' && $user->rights->commande->creer) {
$prodcustprice = new Productcustomerprice($db);
$filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->client->id);
$filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->thirdparty->id);
$result = $prodcustprice->fetch_all('', '', 0, 0, $filter);
if ($result) {
if (count($prodcustprice->lines) > 0) {
$found = true;
$pu_ht = price($prodcustprice->lines [0]->price);
$pu_ttc = price($prodcustprice->lines [0]->price_ttc);
$price_base_type = $prodcustprice->lines [0]->price_base_type;
@ -613,14 +617,7 @@ else if ($action == 'addline' && $user->rights->commande->creer) {
}
}
}
else
{
$pu_ht = $prod->price;
$pu_ttc = $prod->price_ttc;
$price_min = $prod->price_min;
$price_base_type = $prod->price_base_type;
}
// if price ht is forced (ie: calculated by margin rate and cost price)
if (! empty($price_ht)) {
$pu_ht = price2num($price_ht, 'MU');
@ -646,7 +643,7 @@ else if ($action == 'addline' && $user->rights->commande->creer) {
if (empty($newlang) && GETPOST('lang_id'))
$newlang = GETPOST('lang_id');
if (empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -688,8 +685,8 @@ else if ($action == 'addline' && $user->rights->commande->creer) {
$buyingprice = (GETPOST('buying_price' . $predef) ? GETPOST('buying_price' . $predef) : '');
// Local Taxes
$localtax1_tx = get_localtax($tva_tx, 1, $object->client);
$localtax2_tx = get_localtax($tva_tx, 2, $object->client);
$localtax1_tx = get_localtax($tva_tx, 1, $object->thirdparty);
$localtax2_tx = get_localtax($tva_tx, 2, $object->thirdparty);
$desc = dol_htmlcleanlastbr($desc);
@ -712,7 +709,7 @@ else if ($action == 'addline' && $user->rights->commande->creer) {
$outputlangs = $langs;
$newlang = GETPOST('lang_id', 'alpha');
if (! empty($conf->global->MAIN_MULTILANGS) && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -778,8 +775,8 @@ else if ($action == 'updateligne' && $user->rights->commande->creer && GETPOST('
// Define vat_rate
$vat_rate = str_replace('*', '', $vat_rate);
$localtax1_rate = get_localtax($vat_rate, 1, $object->client);
$localtax2_rate = get_localtax($vat_rate, 2, $object->client);
$localtax1_rate = get_localtax($vat_rate, 1, $object->thirdparty);
$localtax2_rate = get_localtax($vat_rate, 2, $object->thirdparty);
// Add buying price
$fournprice = (GETPOST('fournprice') ? GETPOST('fournprice') : '');
@ -805,8 +802,8 @@ else if ($action == 'updateligne' && $user->rights->commande->creer && GETPOST('
$type = $product->type;
$price_min = $product->price_min;
if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->client->price_level))
$price_min = $product->multiprices_min [$object->client->price_level];
if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->thirdparty->price_level))
$price_min = $product->multiprices_min [$object->thirdparty->price_level];
$label = ((GETPOST('update_label') && GETPOST('product_label')) ? GETPOST('product_label') : '');
@ -836,7 +833,7 @@ else if ($action == 'updateligne' && $user->rights->commande->creer && GETPOST('
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id'))
$newlang = GETPOST('lang_id');
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -902,7 +899,7 @@ else if ($action == 'confirm_validate' && $confirm == 'yes' && $user->rights->co
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -947,7 +944,7 @@ else if ($action == 'confirm_modif' && $user->rights->commande->creer) {
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -1013,7 +1010,7 @@ else if ($action == 'up' && $user->rights->commande->creer) {
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -1035,7 +1032,7 @@ else if ($action == 'down' && $user->rights->commande->creer) {
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -1064,7 +1061,7 @@ else if ($action == 'builddoc') // In get or post
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -1179,11 +1176,11 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G
// Recipient was provided from combo list
if (GETPOST('receiver') == 'thirdparty') // Id of third party
{
$sendto = $object->client->email;
$sendto = $object->thirdparty->email;
$sendtoid = 0;
} else // Id du contact
{
$sendto = $object->client->contact_get_property(GETPOST('receiver'), 'email');
$sendto = $object->thirdparty->contact_get_property(GETPOST('receiver'), 'email');
$sendtoid = GETPOST('receiver');
}
}
@ -2444,7 +2441,7 @@ if ($action == 'create' && $user->rights->commande->creer) {
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (!empty($newlang))
{

View File

@ -35,6 +35,7 @@ $langs->load("bills");
$action=GETPOST('action');
$id=GETPOST('id');
$ref=GETPOST('ref');
// Security check
if (isset($_GET["id"]) || isset($_GET["ref"]))
@ -88,8 +89,9 @@ if ($action == 'update' && ! $_POST["cancel"])
if ($action == 'confirm_delete' && $_POST["confirm"] == "yes" && $user->rights->banque->configurer)
{
// Modification
$account = new Account($db, $_GET["id"]);
$account->delete($_GET["id"]);
$account = new Account($db);
$account->fetch($id);
$account->delete();
header("Location: ".DOL_URL_ROOT."/compta/bank/index.php");
exit;

View File

@ -3,7 +3,7 @@
* Copyright (C) 2003 Jean-Louis Bergamo <jlb@j1b.org>
* Copyright (C) 2004-2012 Laurent Destailleur <eldy@users.sourceforge.net>
* Copytight (C) 2005-2009 Regis Houssin <regis.houssin@capnetworks.com>
* Copytight (C) 2014 Alexandre Spangaro <alexandre.spangaro@gmail.com>
* Copytight (C) 2014 Alexandre Spangaro <alexandre.spangaro@gmail.com>
*
* 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
@ -57,7 +57,7 @@ if ($_POST["action"] == 'add')
$error=0;
// Create account
$account = new Account($db,0);
$account = new Account($db);
$account->ref = dol_sanitizeFileName(trim($_POST["ref"]));
$account->label = trim($_POST["label"]);
@ -119,7 +119,7 @@ if ($_POST["action"] == 'update' && ! $_POST["cancel"])
$error=0;
// Update account
$account = new Account($db, $_POST["id"]);
$account = new Account($db);
$account->fetch($_POST["id"]);
$account->ref = dol_string_nospecial(trim($_POST["ref"]));
@ -325,9 +325,9 @@ if ($action == 'create')
print '<td colspan="3"><input size="12" type="text" class="flat" name="account_min_desired" value="'.($_POST["account_min_desired"]?$_POST["account_min_desired"]:$account->account_min_desired).'"></td></tr>';
print '</table>';
print '<br>';
print '<table class="border" width="100%">';
// Accountancy code
if (! empty($conf->global->MAIN_BANK_ACCOUNTANCY_CODE_ALWAYS_REQUIRED))
@ -340,11 +340,11 @@ if ($action == 'create')
print '<tr><td valign="top">'.$langs->trans("AccountancyCode").'</td>';
print '<td colspan="3"><input type="text" name="account_number" value="'.$account->account_number.'"></td></tr>';
}
// Accountancy journal
print '<tr><td valign="top">'.$langs->trans("AccountancyJournal").'</td>';
print '<td colspan="3"><input type="text" name="accountancy_journal" value="'.$account->accountancy_journal.'"></td></tr>';
print '</table>';
print '<center><br><input value="'.$langs->trans("CreateAccount").'" type="submit" class="button"></center>';
@ -458,19 +458,19 @@ else
print '<td colspan="3">'.$account->comment.'</td></tr>';
print '</table>';
print '<br>';
print '<table class="border" width="100%">';
// Accountancy code
print '<tr><td valign="top" width="25%">'.$langs->trans("AccountancyCode").'</td>';
print '<td colspan="3">'.$account->account_number.'</td></tr>';
// Accountancy journal
print '<tr><td valign="top">'.$langs->trans("AccountancyJournal").'</td>';
print '<td colspan="3">'.$account->accountancy_journal.'</td></tr>';
print '</table>';
print '</div>';
@ -611,7 +611,7 @@ else
$doleditor=new DolEditor('account_comment',(isset($_POST["account_comment"])?$_POST["account_comment"]:$account->comment),'',200,'dolibarr_notes','',false,true,$conf->global->FCKEDITOR_ENABLE_SOCIETE,10,70);
$doleditor->Create();
print '</td></tr>';
// Accountancy code
if (! empty($conf->global->MAIN_BANK_ACCOUNTANCY_CODE_ALWAYS_REQUIRED))
{
@ -623,7 +623,7 @@ else
print '<tr><td valign="top">'.$langs->trans("AccountancyCode").'</td>';
print '<td colspan="3"><input type="text" name="account_number" value="'.(isset($_POST["account_number"])?$_POST["account_number"]:$account->account_number).'"></td></tr>';
}
// Accountancy journal
print '<tr><td valign="top">'.$langs->trans("AccountancyJournalCode").'</td>';
print '<td colspan="3"><input type="text" name="accountancy_journal" value="'.(isset($_POST["accountancy_journal"])?$_POST["accountancy_journal"]:$account->accountancy_journal).'"></td></tr>';

View File

@ -10,6 +10,7 @@
* Copyright (C) 2013 Jean-Francois FERRY <jfefe@aternatik.fr>
* Copyright (C) 2013-2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013 Cédric Salvador <csalvador@gpcsolutions.fr>
* Copyright (C) 2014 Ferran Marcet <fmarcet@2byte.es>
*
* 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
@ -182,7 +183,7 @@ else if ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -393,7 +394,7 @@ else if ($action == 'confirm_valid' && $confirm == 'yes' && $user->rights->factu
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -468,7 +469,7 @@ else if ($action == 'confirm_modif' && ((empty($conf->global->MAIN_USE_ADVANCED_
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -1145,18 +1146,22 @@ else if ($action == 'addline' && $user->rights->facture->creer)
$label = ((GETPOST('product_label') && GETPOST('product_label') != $prod->label) ? GETPOST('product_label') : '');
// Update if prices fields are defined
$tva_tx = get_default_tva($mysoc, $object->client, $prod->id);
$tva_npr = get_default_npr($mysoc, $object->client, $prod->id);
$tva_tx = get_default_tva($mysoc, $object->thirdparty, $prod->id);
$tva_npr = get_default_npr($mysoc, $object->thirdparty, $prod->id);
$pu_ht = $prod->price;
$pu_ttc = $prod->price_ttc;
$price_min = $prod->price_min;
$price_base_type = $prod->price_base_type;
// We define price for product
if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->client->price_level))
if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->thirdparty->price_level))
{
$pu_ht = $prod->multiprices [$object->client->price_level];
$pu_ttc = $prod->multiprices_ttc [$object->client->price_level];
$price_min = $prod->multiprices_min [$object->client->price_level];
$price_base_type = $prod->multiprices_base_type [$object->client->price_level];
$tva_tx=$prod->multiprices_tva_tx[$object->client->price_level];
$tva_npr=$prod->multiprices_recuperableonly[$object->client->price_level];
$pu_ht = $prod->multiprices [$object->thirdparty->price_level];
$pu_ttc = $prod->multiprices_ttc [$object->thirdparty->price_level];
$price_min = $prod->multiprices_min [$object->thirdparty->price_level];
$price_base_type = $prod->multiprices_base_type [$object->thirdparty->price_level];
$tva_tx=$prod->multiprices_tva_tx[$object->thirdparty->price_level];
$tva_npr=$prod->multiprices_recuperableonly[$object->thirdparty->price_level];
}
elseif (! empty($conf->global->PRODUIT_CUSTOMER_PRICES))
{
@ -1164,12 +1169,11 @@ else if ($action == 'addline' && $user->rights->facture->creer)
$prodcustprice = new Productcustomerprice($db);
$filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->client->id);
$filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->thirdparty->id);
$result = $prodcustprice->fetch_all('', '', 0, 0, $filter);
if ($result) {
if (count($prodcustprice->lines) > 0) {
$found = true;
$pu_ht = price($prodcustprice->lines [0]->price);
$pu_ttc = price($prodcustprice->lines [0]->price_ttc);
$price_base_type = $prodcustprice->lines [0]->price_base_type;
@ -1177,14 +1181,7 @@ else if ($action == 'addline' && $user->rights->facture->creer)
}
}
}
else
{
$pu_ht = $prod->price;
$pu_ttc = $prod->price_ttc;
$price_min = $prod->price_min;
$price_base_type = $prod->price_base_type;
}
// if price ht is forced (ie: calculated by margin rate and cost price)
if (! empty($price_ht)) {
$pu_ht = price2num($price_ht, 'MU');
@ -1210,7 +1207,7 @@ else if ($action == 'addline' && $user->rights->facture->creer)
if (empty($newlang) && GETPOST('lang_id'))
$newlang = GETPOST('lang_id');
if (empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -1252,8 +1249,8 @@ else if ($action == 'addline' && $user->rights->facture->creer)
$buyingprice = price2num(GETPOST('buying_price' . $predef) ? GETPOST('buying_price' . $predef) : '');
// Local Taxes
$localtax1_tx = get_localtax($tva_tx, 1, $object->client);
$localtax2_tx = get_localtax($tva_tx, 2, $object->client);
$localtax1_tx = get_localtax($tva_tx, 1, $object->thirdparty);
$localtax2_tx = get_localtax($tva_tx, 2, $object->thirdparty);
$info_bits = 0;
if ($tva_npr)
@ -1272,7 +1269,7 @@ else if ($action == 'addline' && $user->rights->facture->creer)
$outputlangs = $langs;
$newlang = GETPOST('lang_id', 'alpha');
if (! empty($conf->global->MAIN_MULTILANGS) && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -1342,8 +1339,8 @@ elseif ($action == 'updateligne' && $user->rights->facture->creer && ! GETPOST('
// Define vat_rate
$vat_rate = str_replace('*', '', $vat_rate);
$localtax1_rate = get_localtax($vat_rate, 1, $object->client);
$localtax2_rate = get_localtax($vat_rate, 2, $object->client);
$localtax1_rate = get_localtax($vat_rate, 1, $object->thirdparty);
$localtax2_rate = get_localtax($vat_rate, 2, $object->thirdparty);
// Add buying price
$fournprice = price2num(GETPOST('fournprice') ? GETPOST('fournprice') : '');
@ -1370,8 +1367,8 @@ elseif ($action == 'updateligne' && $user->rights->facture->creer && ! GETPOST('
$type = $product->type;
$price_min = $product->price_min;
if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->client->price_level))
$price_min = $product->multiprices_min [$object->client->price_level];
if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->thirdparty->price_level))
$price_min = $product->multiprices_min [$object->thirdparty->price_level];
$label = ((GETPOST('update_label') && GETPOST('product_label')) ? GETPOST('product_label') : '');
@ -1403,7 +1400,7 @@ elseif ($action == 'updateligne' && $user->rights->facture->creer && ! GETPOST('
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id'))
$newlang = GETPOST('lang_id');
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -1448,7 +1445,7 @@ else if ($action == 'up' && $user->rights->facture->creer) {
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -1470,7 +1467,7 @@ else if ($action == 'down' && $user->rights->facture->creer) {
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (! empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@ -1546,11 +1543,11 @@ if (($action == 'send' || $action == 'relance') && ! $_POST['addfile'] && ! $_PO
// Recipient was provided from combo list
if ($_POST['receiver'] == 'thirdparty') // Id of third party
{
$sendto = $object->client->email;
$sendto = $object->thirdparty->email;
$sendtoid = 0;
} else // Id du contact
{
$sendto = $object->client->contact_get_property($_POST['receiver'], 'email');
$sendto = $object->thirdparty->contact_get_property($_POST['receiver'], 'email');
$sendtoid = $_POST['receiver'];
}
}
@ -1692,7 +1689,7 @@ else if ($action == 'builddoc') // En get ou en post
$outputlangs = $langs;
$newlang = '';
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id')) $newlang = GETPOST('lang_id');
if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $object->client->default_lang;
if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $object->thirdparty->default_lang;
if (! empty($newlang))
{
$outputlangs = new Translate("", $conf);
@ -3670,7 +3667,7 @@ if ($action == 'create')
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id']))
$newlang = $_REQUEST['lang_id'];
if ($conf->global->MAIN_MULTILANGS && empty($newlang))
$newlang = $object->client->default_lang;
$newlang = $object->thirdparty->default_lang;
if (!empty($newlang))
{

File diff suppressed because it is too large Load Diff

View File

@ -106,11 +106,11 @@ class Localtax extends CommonObject
// Call trigger
$result=$this->call_trigger('LOCALTAX_CREATE',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
//FIXME: Add rollback if trigger fail
return $this->id;
}
else
@ -167,9 +167,9 @@ class Localtax extends CommonObject
{
// Call trigger
$result=$this->call_trigger('LOCALTAX_MODIFY',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
//FIXME: Add rollback if trigger fail
}
@ -257,8 +257,8 @@ class Localtax extends CommonObject
$result=$this->call_trigger('LOCALTAX_DELETE',$user);
if ($result < 0) return -1;
// End call triggers
$sql = "DELETE FROM ".MAIN_DB_PREFIX."localtax";
$sql.= " WHERE rowid=".$this->id;
@ -326,35 +326,32 @@ class Localtax extends CommonObject
*/
function localtax_sum_collectee($year = 0)
{
$sql = "SELECT sum(f.localtax) as amount";
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f WHERE f.paye = 1";
if ($year)
{
$sql .= " AND f.datef >= '$year-01-01' AND f.datef <= '$year-12-31' ";
}
$result = $this->db->query($sql);
if ($result)
{
if ($this->db->num_rows($result))
{
$obj = $this->db->fetch_object($result);
return $obj->amount;
$ret = $obj->amount;
$this->db->free($result);
return $ret;
}
else
{
return 0;
{
$this->db->free($result);
return 0;
}
$this->db->free($result);
}
else
{
print $this->db->error();
{
print $this->db->lasterror();
return -1;
}
}
@ -370,31 +367,30 @@ class Localtax extends CommonObject
$sql = "SELECT sum(f.total_localtax) as total_localtax";
$sql .= " FROM ".MAIN_DB_PREFIX."facture_fourn as f";
if ($year)
{
$sql .= " WHERE f.datef >= '$year-01-01' AND f.datef <= '$year-12-31' ";
}
$result = $this->db->query($sql);
$result = $this->db->query($sql);
if ($result)
{
if ($this->db->num_rows($result))
{
$obj = $this->db->fetch_object($result);
return $obj->total_localtax;
$ret = $obj->total_localtax;
$this->db->free($result);
return $ret;
}
else
{
return 0;
{
$this->db->free($result);
return 0;
}
$this->db->free();
}
else
{
print $this->db->error();
print $this->db->lasterror();
return -1;
}
}
@ -412,32 +408,30 @@ class Localtax extends CommonObject
$sql = "SELECT sum(f.amount) as amount";
$sql .= " FROM ".MAIN_DB_PREFIX."localtax as f";
if ($year)
{
$sql .= " WHERE f.datev >= '$year-01-01' AND f.datev <= '$year-12-31' ";
}
$result = $this->db->query($sql);
if ($result)
{
if ($this->db->num_rows($result))
{
$obj = $this->db->fetch_object($result);
return $obj->amount;
$ret = $obj->amount;
$this->db->free($result);
return $ret;
}
else
{
return 0;
{
$this->db->free($result);
return 0;
}
$this->db->free();
}
else
{
print $this->db->error();
print $this->db->lasterror();
return -1;
}
}
@ -543,14 +537,14 @@ class Localtax extends CommonObject
}
else
{
$this->error=$this->db->error();
$this->error=$this->db->lasterror();
$this->db->rollback();
return -2;
}
}
else
{
$this->error=$this->db->error();
$this->error=$this->db->lasterror();
$this->db->rollback();
return -1;
}

View File

@ -123,7 +123,7 @@ class Tva extends CommonObject
// Call trigger
$result=$this->call_trigger('TVA_CREATE',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
//FIXME: Add rollback if trigger fail
@ -138,7 +138,7 @@ class Tva extends CommonObject
/**
* Update database
*
*
* @param User $user User that modify
* @param int $notrigger 0=no, 1=yes (no update trigger)
* @return int <0 if KO, >0 if OK
@ -188,9 +188,9 @@ class Tva extends CommonObject
{
// Call trigger
$result=$this->call_trigger('TVA_MODIFY',$user);
if ($result < 0) $error++;
if ($result < 0) $error++;
// End call triggers
//FIXME: Add rollback if trigger fail
}
@ -200,7 +200,7 @@ class Tva extends CommonObject
/**
* Load object in memory from database
*
*
* @param int $id id object
* @param User $user User that load
* @return int <0 if KO, >0 if OK
@ -269,7 +269,7 @@ class Tva extends CommonObject
/**
* Delete object in database
*
*
* @param User $user User that delete
* @return int <0 if KO, >0 if OK
*/
@ -278,12 +278,12 @@ class Tva extends CommonObject
global $conf, $langs;
$error=0;
// Call trigger
$result=$this->call_trigger('TVA_DELETE',$user);
if ($result < 0) return -1;
// End call triggers
$sql = "DELETE FROM ".MAIN_DB_PREFIX."tva";
$sql.= " WHERE rowid=".$this->id;
@ -325,7 +325,7 @@ class Tva extends CommonObject
/**
* Balance of VAT
*
*
* @param int $year Year
* @return double Amount
*/
@ -344,7 +344,7 @@ class Tva extends CommonObject
/**
* Total of the VAT from invoices emitted by the society.
*
*
* @param int $year Year
* @return double Amount
*/
@ -353,32 +353,30 @@ class Tva extends CommonObject
$sql = "SELECT sum(f.tva) as amount";
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f WHERE f.paye = 1";
if ($year)
{
$sql .= " AND f.datef >= '".$year."-01-01' AND f.datef <= '".$year."-12-31' ";
}
$result = $this->db->query($sql);
if ($result)
{
if ($this->db->num_rows($result))
{
$obj = $this->db->fetch_object($result);
return $obj->amount;
$ret = $obj->amount;
$this->db->free($result);
return $ret;
}
else
{
return 0;
{
$this->db->free($result);
return 0;
}
$this->db->free($result);
}
else
{
print $this->db->error();
print $this->db->lasterror();
return -1;
}
}
@ -394,31 +392,30 @@ class Tva extends CommonObject
$sql = "SELECT sum(f.total_tva) as total_tva";
$sql .= " FROM ".MAIN_DB_PREFIX."facture_fourn as f";
if ($year)
{
$sql .= " WHERE f.datef >= '".$year."-01-01' AND f.datef <= '".$year."-12-31' ";
}
$result = $this->db->query($sql);
$result = $this->db->query($sql);
if ($result)
{
if ($this->db->num_rows($result))
{
$obj = $this->db->fetch_object($result);
return $obj->total_tva;
$ret = $obj->total_tva;
$this->db->free($result);
return $ret;
}
else
{
return 0;
{
$this->db->free($result);
return 0;
}
$this->db->free();
}
else
{
print $this->db->error();
print $this->db->lasterror();
return -1;
}
}
@ -442,25 +439,24 @@ class Tva extends CommonObject
}
$result = $this->db->query($sql);
if ($result)
{
if ($this->db->num_rows($result))
{
$obj = $this->db->fetch_object($result);
return $obj->amount;
$ret = $obj->amount;
$this->db->free($result);
return $ret;
}
else
{
return 0;
{
$this->db->free($result);
return 0;
}
$this->db->free();
}
else
{
print $this->db->error();
print $this->db->lasterror();
return -1;
}
}
@ -485,7 +481,7 @@ class Tva extends CommonObject
$this->fk_bank=trim($this->fk_bank);
$this->fk_user_creat=trim($this->fk_user_creat);
$this->fk_user_modif=trim($this->fk_user_modif);
// Check parameters
if (! $this->label)
{
@ -542,13 +538,13 @@ class Tva extends CommonObject
// Call trigger
//XXX: Should be done just befor commit no ?
$result=$this->call_trigger('TVA_ADDPAYMENT',$user);
if ($result < 0)
if ($result < 0)
{
$this->id = 0;
$ok = 0;
}
// End call triggers
if ($this->id > 0)
{
$ok=1;

View File

@ -6,6 +6,7 @@
* Copyright (C) 2010-2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2013 Christophe Battarel <christophe.battarel@altairis.fr>
* Copyright (C) 2013-2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2014 Ferran Marcet <fmarcet@2byte.es>
*
* 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
@ -276,7 +277,7 @@ if ($action == 'add' && $user->rights->contrat->creer)
$outputlangs = $langs;
$newlang='';
if (empty($newlang) && GETPOST('lang_id')) $newlang=GETPOST('lang_id');
if (empty($newlang)) $newlang=$srcobject->client->default_lang;
if (empty($newlang)) $newlang=$srcobject->thirdparty->default_lang;
if (! empty($newlang))
{
$outputlangs = new Translate("",$conf);
@ -421,6 +422,10 @@ else if ($action == 'addline' && $user->rights->contrat->creer)
$tva_tx = get_default_tva($mysoc,$object->thirdparty,$prod->id);
$tva_npr = get_default_npr($mysoc,$object->thirdparty,$prod->id);
$pu_ht = $prod->price;
$pu_ttc = $prod->price_ttc;
$price_min = $prod->price_min;
$price_base_type = $prod->price_base_type;
// On defini prix unitaire
if ($conf->global->PRODUIT_MULTIPRICES && $object->thirdparty->price_level)
@ -430,13 +435,24 @@ else if ($action == 'addline' && $user->rights->contrat->creer)
$price_min = $prod->multiprices_min[$object->thirdparty->price_level];
$price_base_type = $prod->multiprices_base_type[$object->thirdparty->price_level];
}
else
{
$pu_ht = $prod->price;
$pu_ttc = $prod->price_ttc;
$price_min = $prod->price_min;
$price_base_type = $prod->price_base_type;
}
elseif (! empty($conf->global->PRODUIT_CUSTOMER_PRICES))
{
require_once DOL_DOCUMENT_ROOT . '/product/class/productcustomerprice.class.php';
$prodcustprice = new Productcustomerprice($db);
$filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->thirdparty->id);
$result = $prodcustprice->fetch_all('', '', 0, 0, $filter);
if ($result) {
if (count($prodcustprice->lines) > 0) {
$pu_ht = price($prodcustprice->lines [0]->price);
$pu_ttc = price($prodcustprice->lines [0]->price_ttc);
$price_base_type = $prodcustprice->lines [0]->price_base_type;
$prod->tva_tx = $prodcustprice->lines [0]->tva_tx;
}
}
}
// On reevalue prix selon taux tva car taux tva transaction peut etre different
// de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur).

View File

@ -113,11 +113,10 @@ class box_graph_propales_permonth extends ModeleBoxes
$nowarray=dol_getdate(dol_now(),true);
if (empty($endyear)) $endyear=$nowarray['year'];
$startyear=$endyear-1;
$mode='customer';
$WIDTH=(($shownb && $showtot) || ! empty($conf->dol_optimize_smallscreen))?'256':'320';
$HEIGHT='192';
$stats = new PropaleStats($this->db, $socid, $mode, 0);
$stats = new PropaleStats($this->db, $socid, 0);
// Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...)
if ($shownb)
@ -126,8 +125,7 @@ class box_graph_propales_permonth extends ModeleBoxes
$datatype1 = array_pad(array(), ($endyear-$startyear+1), 'bars');
$filenamenb = $dir."/".$prefix."propalsnbinyear-".$endyear.".png";
if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=propalstats&amp;file=propalsnbinyear-'.$endyear.'.png';
if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=propalstatssupplier&amp;file=propalsnbinyear-'.$endyear.'.png';
$fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=propalstats&amp;file=propalsnbinyear-'.$endyear.'.png';
$px1 = new DolGraph();
$mesg = $px1->isGraphKo();

View File

@ -116,7 +116,6 @@ abstract class CommonObject
$lastname=$this->lastname;
$firstname=$this->firstname;
if (empty($lastname)) $lastname=(isset($this->lastname)?$this->lastname:(isset($this->name)?$this->name:(isset($this->nom)?$this->nom:'')));
if (empty($firstname)) $firstname=$this->firstname;
$ret='';
if ($option && $this->civility_id)

View File

@ -28,6 +28,34 @@
*/
abstract class CommonObjectLine
{
/**
* Call trigger based on this instance
* NB: Error from trigger are stacked in interface->errors
* NB2: If return code of triggers are < 0, action calling trigger should cancel all transaction.
*
* @param string $trigger_name trigger's name to execute
* @param User $user Object user
* @return int Result of run_triggers
*/
function call_trigger($trigger_name, $user)
{
global $langs,$conf;
include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php';
$interface=new Interfaces($this->db);
$result=$interface->run_triggers($trigger_name,$this,$user,$langs,$conf);
if ($result < 0)
{
if (!empty($this->errors))
{
$this->errors=array_merge($this->errors,$interface->errors);
}
else
{
$this->errors=$interface->errors;
}
}
return $result;
}
}

View File

@ -23,12 +23,19 @@
*/
/**
* Class to manage boxes on pages
* Class to manage boxes on pages. This is an utility class (all is static)
*/
class InfoBox
{
static $listOfPages = array(0=>'Home'); // Nom des positions 0=Home, 1=...
/**
* Name of positions 0=Home, 1=...
*
* @return array Array with list of zones
*/
static function getListOfPagesForBoxes()
{
return array(0=>'Home');
}
/**
* Return array of boxes qualified for area and user
@ -137,12 +144,12 @@ class InfoBox
$arrayelem=explode('|',$moduleelem);
$tmpenabled=0; // $tmpenabled is used for the '|' test (OR)
foreach($arrayelem as $module)
{
{
$tmpmodule=preg_replace('/@[^@]+/','',$module);
if (! empty($conf->$tmpmodule->enabled)) $tmpenabled=1;
if (! empty($conf->$tmpmodule->enabled)) $tmpenabled=1;
//print $boxname.'-'.$module.'-module enabled='.(empty($conf->$tmpmodule->enabled)?0:1).'<br>';
}
if (empty($tmpenabled)) // We found at least one module required that disabled
if (empty($tmpenabled)) // We found at least one module required that disabled
{
$enabled=0;
break;
@ -150,7 +157,7 @@ class InfoBox
}
}
//print '=>'.$boxname.'-enabled='.$enabled.'<br>';
//print 'xx module='.$module.' enabled='.$enabled;
if ($enabled) $boxes[]=$box;
else unset($box);

View File

@ -335,11 +335,12 @@ class Translate
* Return translated value of key. Search in lang file, then into database.
* Key must be any complete entry into lang file: CurrencyEUR, ...
* If not found, return key.
* WARNING: To avoid infinite loop (getLabelFromKey->transnoentities->getTradFromKey), getLabelFromKey must
* not be called with same value than input.
* The string return is not formated (translated with transnoentitiesnoconv)
* NOTE: To avoid infinite loop (getLabelFromKey->transnoentities->getTradFromKey), if you modify this function,
* check that getLabelFromKey is not called with same value than input.
*
* @param string $key Key to translate
* @return string Translated string
* @return string Translated string (translated with transnoentitiesnoconv)
*/
private function getTradFromKey($key)
{
@ -347,7 +348,6 @@ class Translate
if (! is_string($key)) return 'ErrorBadValueForParamNotAString'; // Avoid multiple errors with code not using function correctly.
//print 'xx'.$key;
$newstr=$key;
if (preg_match('/^Currency([A-Z][A-Z][A-Z])$/i',$key,$reg))
{

View File

@ -33,13 +33,13 @@ class DoliDBMssql extends DoliDB
//! Database type
public $type='mssql';
//! Database label
const label='MSSQL';
const LABEL='MSSQL';
//! Charset used to force charset when creating database
var $forcecharset='latin1'; // Can't be static as it may be forced with a dynamic value
//! Collate used to force collate when creating database
var $forcecollate='latin1_swedish_ci'; // Can't be static as it may be forced with a dynamic value
//! Version min database
const versionmin='2000';
const VERSIONMIN='2000';
//! Resultset of last query
private $_results;

View File

@ -34,9 +34,9 @@ class DoliDBMysql extends DoliDB
//! Database type
public $type='mysql';
//! Database label
const label='MySQL';
const LABEL='MySQL';
//! Version min database
const versionmin='4.1.0';
const VERSIONMIN='4.1.0';
//! Resultset of last query
private $_results;

View File

@ -34,9 +34,9 @@ class DoliDBMysqli extends DoliDB
//! Database type
public $type='mysqli';
//! Database label
const label='MySQL';
const LABEL='MySQL';
//! Version min database
const versionmin='4.1.0';
const VERSIONMIN='4.1.0';
//! Resultset of last query
private $_results;

View File

@ -37,13 +37,13 @@ class DoliDBPgsql extends DoliDB
//! Database type
public $type='pgsql'; // Name of manager
//! Database label
const label='PostgreSQL'; // Label of manager
const LABEL='PostgreSQL'; // Label of manager
//! Charset
var $forcecharset='UTF8'; // Can't be static as it may be forced with a dynamic value
//! Collate used to force collate when creating database
var $forcecollate=''; // Can't be static as it may be forced with a dynamic value
//! Version min database
const versionmin='8.4.0'; // Version min database
const VERSIONMIN='8.4.0'; // Version min database
//! Resultset of last query
private $_results;

View File

@ -34,9 +34,9 @@ class DoliDBSqlite extends DoliDB
//! Database type
public $type='sqlite';
//! Database label
const label='PDO Sqlite';
const LABEL='PDO Sqlite';
//! Version min database
const versionmin='3.0.0';
const VERSIONMIN='3.0.0';
//! Resultset of last query
private $_results;

View File

@ -426,10 +426,15 @@ function actions_prepare_head($object)
$h++;
}
$head[$h][0] = DOL_URL_ROOT.'/comm/action/document.php?id='.$object->id;
$head[$h][1] = $langs->trans('Documents');
$head[$h][2] = 'documents';
$h++;
// Attached files
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
$upload_dir = $conf->agenda->dir_output . "/" . $object->id;
$nbFiles = count(dol_dir_list($upload_dir,'files',0,'','(\.meta|_preview\.png)$'));
$head[$h][0] = DOL_URL_ROOT.'/comm/action/document.php?id='.$object->id;
$head[$h][1] = $langs->trans("Documents");
if($nbFiles > 0) $head[$h][1].= ' ('.$nbFiles.')';
$head[$h][2] = 'documents';
$h++;
$head[$h][0] = DOL_URL_ROOT.'/comm/action/info.php?id='.$object->id;
$head[$h][1] = $langs->trans('Info');

View File

@ -395,12 +395,12 @@ function isValidMailDomain($mail)
* <http[s]> :// [user[:pass]@] hostname [port] [/path] [?getquery] [anchor]
*
* @param string $url Url
* @param int $http 1: verify http, 0: not verify http
* @param int $pass 1: verify user and pass, 0: not verify user and pass
* @param int $port 1: verify port, 0: not verify port
* @param int $path 1: verify path, 0: not verify path
* @param int $query 1: verify query, 0: not verify query
* @param int $anchor 1: verify anchor, 0: not verify anchor
* @param int $http 1: verify http is provided, 0: not verify http
* @param int $pass 1: verify user and pass is provided, 0: not verify user and pass
* @param int $port 1: verify port is provided, 0: not verify port
* @param int $path 1: verify a path is provided "/" or "/..." or "/.../", 0: not verify path
* @param int $query 1: verify query is provided, 0: not verify query
* @param int $anchor 1: verify anchor is provided, 0: not verify anchor
* @return int 1=Check is OK, 0=Check is KO
*/
function isValidUrl($url,$http=0,$pass=0,$port=0,$path=0,$query=0,$anchor=0)
@ -415,9 +415,9 @@ function isValidUrl($url,$http=0,$pass=0,$port=0,$path=0,$query=0,$anchor=0)
if ($pass) $urlregex .= "([a-z0-9+!*(),;?&=\$_.-]+(\:[a-z0-9+!*(),;?&=\$_.-]+)?@)";
// HOSTNAME OR IP
//$urlregex .= "[a-z0-9+\$_-]+(\.[a-z0-9+\$_-]+)*"; // http://x = allowed (ex. http://localhost, http://routerlogin)
//$urlregex .= "[a-z0-9+\$_-]+(\.[a-z0-9+\$_-]+)+"; // http://x.x = minimum
$urlregex .= "([a-z0-9+\$_-]+\.)*[a-z0-9+\$_-]{2,3}"; // http://x.xx(x) = minimum
//$urlregex .= "[a-z0-9+\$_-]+(\.[a-z0-9+\$_-]+)*"; // x allowed (ex. http://localhost, http://routerlogin)
//$urlregex .= "[a-z0-9+\$_-]+(\.[a-z0-9+\$_-]+)+"; // x.x
$urlregex .= "([a-z0-9+\$_\\\:-])+(\.[a-z0-9+\$_-][a-z0-9+\$_-]+)*"; // x ou x.xx (2 x ou plus)
//use only one of the above
// PORT
@ -434,7 +434,7 @@ function isValidUrl($url,$http=0,$pass=0,$port=0,$path=0,$query=0,$anchor=0)
{
$ValidUrl = 1;
}
//print $urlregex.' - '.$url.' - '.$ValidUrl;exit;
//print $urlregex.' - '.$url.' - '.$ValidUrl;
return $ValidUrl;
}

View File

@ -739,7 +739,7 @@ function pdf_pagefoot(&$pdf,$outputlangs,$paramfreetext,$fromcompany,$marge_bass
// Capital
if ($fromcompany->capital)
{
$line3.=($line3?" - ":"").$outputlangs->transnoentities("CapitalOf",$fromcompany->capital)." ".$outputlangs->transnoentities("Currency".$conf->currency);
$line3.=($line3?" - ":"").$outputlangs->transnoentities("CapitalOf",price($fromcompany->capital, 0, $outputlangs, 0, 0, 0, $conf->currency));
}
// Prof Id 1
if ($fromcompany->idprof1 && ($fromcompany->country_code != 'FR' || ! $fromcompany->idprof2))
@ -1425,6 +1425,38 @@ function pdf_getlineremisepercent($object,$i,$outputlangs,$hidedetails=0)
}
}
/**
* Return line remise value
*
* @param Object $object Object
* @param int $i Current line number
* @param Translate $outputlangs Object langs for output
* @param int $hidedetails Hide details (0=no, 1=yes, 2=just special lines)
* @return string
*/
function pdf_getlineremisevalue($object,$i,$outputlangs,$hidedetails=0)
{
global $hookmanager;
include_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
if ($object->lines[$i]->special_code != 3)
{
if (is_object($hookmanager) && ( ($object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code) ) || ! empty($object->lines[$i]->fk_parent_line) ) )
{
$special_code = $object->lines[$i]->special_code;
if (! empty($object->lines[$i]->fk_parent_line)) $special_code = $object->getSpecialCode($object->lines[$i]->fk_parent_line);
$parameters = array('i'=>$i,'outputlangs'=>$outputlangs,'hidedetails'=>$hidedetails,'special_code'=>$special_code);
$action='';
return $hookmanager->executeHooks('pdf_getlineremisevalue',$parameters,$object,$action); // Note that $action and $object may have been modified by some hooks
}
else
{
if (empty($hidedetails) || $hidedetails > 1) return price($object->lines[$i]->subprice * $object->lines[$i]->qty - $object->lines[$i]->total_ht);
}
}
}
/**
* Return line total excluding tax
*

View File

@ -523,8 +523,10 @@ abstract class DolibarrModules
if (is_array($this->boxes))
{
foreach ($this->boxes as $key => $value)
{
$pos_name = InfoBox::getListOfPagesForBoxes();
foreach ($this->boxes as $key => $value)
{
$file = isset($this->boxes[$key]['file'])?$this->boxes[$key]['file']:'';
$note = isset($this->boxes[$key]['note'])?$this->boxes[$key]['note']:'';
$enabledbydefaulton = isset($this->boxes[$key]['enabledbydefaulton'])?$this->boxes[$key]['enabledbydefaulton']:'Home';
@ -564,7 +566,6 @@ abstract class DolibarrModules
{
$lastid=$this->db->last_insert_id(MAIN_DB_PREFIX."boxes_def","rowid");
$pos_name = getStaticMember('InfoBox','listOfPages');
foreach ($pos_name as $key2 => $val2)
{
//print 'key2='.$key2.'-val2='.$val2."<br>\n";

File diff suppressed because it is too large Load Diff

View File

@ -177,11 +177,11 @@ class modFacture extends DolibarrModules
$this->export_code[$r]=$this->rights_class.'_'.$r;
$this->export_label[$r]='CustomersInvoicesAndInvoiceLines'; // Translation key (used only if key ExportDataset_xxx_z not found)
$this->export_icon[$r]='bill';
$this->export_permission[$r]=array(array("facture","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.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.facnumber'=>"InvoiceRef",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.date_lim_reglement'=>"DateDue",'f.total'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_private'=>"NotePrivate",'f.note_public'=>"NotePublic",'fd.rowid'=>'LineId','fd.label'=>"Label",'fd.description'=>"LineDescription",'fd.subprice'=>"LineUnitPrice",'fd.tva_tx'=>"LineVATRate",'fd.qty'=>"LineQty",'fd.total_ht'=>"LineTotalHT",'fd.total_tva'=>"LineTotalVAT",'fd.total_ttc'=>"LineTotalTTC",'fd.date_start'=>"DateStart",'fd.date_end'=>"DateEnd",'fd.special_code'=>'SpecialCode','fd.product_type'=>"TypeOfLineServiceOrProduct",'fd.fk_product'=>'ProductId','p.ref'=>'ProductRef','p.label'=>'ProductLabel','p.accountancy_code_sell'=>'ProductAccountancySellCode');
$this->export_permission[$r]=array(array("facture","facture","export","other"));
$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.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.facnumber'=>"InvoiceRef",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.date_lim_reglement'=>"DateDue",'f.total'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_private'=>"NotePrivate",'f.note_public'=>"NotePublic",'f.fk_user_author'=>'CreatedById','uc.login'=>'CreatedByLogin','f.fk_user_valid'=>'ValidatedById','uv.login'=>'ValidatedByLogin','fd.rowid'=>'LineId','fd.label'=>"Label",'fd.description'=>"LineDescription",'fd.subprice'=>"LineUnitPrice",'fd.tva_tx'=>"LineVATRate",'fd.qty'=>"LineQty",'fd.total_ht'=>"LineTotalHT",'fd.total_tva'=>"LineTotalVAT",'fd.total_ttc'=>"LineTotalTTC",'fd.date_start'=>"DateStart",'fd.date_end'=>"DateEnd",'fd.special_code'=>'SpecialCode','fd.product_type'=>"TypeOfLineServiceOrProduct",'fd.fk_product'=>'ProductId','p.ref'=>'ProductRef','p.label'=>'ProductLabel','p.accountancy_code_sell'=>'ProductAccountancySellCode');
//$this->export_TypeFields_array[$r]=array('s.rowid'=>"List:societe:nom",'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.code_compta'=>'Text','s.code_compta_fournisseur'=>'Text','s.tva_intra'=>'Text','f.facnumber'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.date_lim_reglement'=>"Date",'f.total'=>"Numeric",'f.total_ttc'=>"Numeric",'f.tva'=>"Numeric",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_private'=>"Text",'f.note_public'=>"Text",'fd.description'=>"Text",'fd.price'=>"Numeric",'fd.tva_tx'=>"Numeric",'fd.qty'=>"Numeric",'fd.total_ht'=>"Numeric",'fd.total_tva'=>"Numeric",'fd.total_ttc'=>"Numeric",'fd.date_start'=>"Date",'fd.date_end'=>"Date",'fd.product_type'=>"Numeric",'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.code_compta'=>'Text','s.code_compta_fournisseur'=>'Text','s.tva_intra'=>'Text','f.facnumber'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.date_lim_reglement'=>"Date",'f.total'=>"Numeric",'f.total_ttc'=>"Numeric",'f.tva'=>"Numeric",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_private'=>"Text",'f.note_public'=>"Text",'fd.description'=>"Text",'fd.subprice'=>"Numeric",'fd.tva_tx'=>"Numeric",'fd.qty'=>"Numeric",'fd.total_ht'=>"Numeric",'fd.total_tva'=>"Numeric",'fd.total_ttc'=>"Numeric",'fd.date_start'=>"Date",'fd.date_end'=>"Date",'fd.special_code'=>'Numeric','fd.product_type'=>"Numeric",'fd.fk_product'=>'List:Product:label','p.ref'=>'Text','p.label'=>'Text','p.accountancy_code_sell'=>'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.code_compta'=>'company','s.code_compta_fournisseur'=>'company','s.tva_intra'=>'company','f.rowid'=>"invoice",'f.facnumber'=>"invoice",'f.datec'=>"invoice",'f.datef'=>"invoice",'f.date_lim_reglement'=>"invoice",'f.total'=>"invoice",'f.total_ttc'=>"invoice",'f.tva'=>"invoice",'f.paye'=>"invoice",'f.fk_statut'=>'invoice','f.note_private'=>"invoice",'f.note_public'=>"invoice",'fd.rowid'=>'invoice_line','fd.label'=>"invoice_line",'fd.description'=>"invoice_line",'fd.subprice'=>"invoice_line",'fd.total_ht'=>"invoice_line",'fd.total_tva'=>"invoice_line",'fd.total_ttc'=>"invoice_line",'fd.tva_tx'=>"invoice_line",'fd.qty'=>"invoice_line",'fd.date_start'=>"invoice_line",'fd.date_end'=>"invoice_line",'fd.special_code'=>'invoice_line','fd.product_type'=>'invoice_line','fd.fk_product'=>'product','p.ref'=>'product','p.label'=>'product','p.accountancy_code_sell'=>'product');
$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.code_compta'=>'company','s.code_compta_fournisseur'=>'company','s.tva_intra'=>'company','f.rowid'=>"invoice",'f.facnumber'=>"invoice",'f.datec'=>"invoice",'f.datef'=>"invoice",'f.date_lim_reglement'=>"invoice",'f.total'=>"invoice",'f.total_ttc'=>"invoice",'f.tva'=>"invoice",'f.paye'=>"invoice",'f.fk_statut'=>'invoice','f.note_private'=>"invoice",'f.note_public'=>"invoice",'fd.rowid'=>'invoice_line','fd.label'=>"invoice_line",'fd.description'=>"invoice_line",'fd.subprice'=>"invoice_line",'fd.total_ht'=>"invoice_line",'fd.total_tva'=>"invoice_line",'fd.total_ttc'=>"invoice_line",'fd.tva_tx'=>"invoice_line",'fd.qty'=>"invoice_line",'fd.date_start'=>"invoice_line",'fd.date_end'=>"invoice_line",'fd.special_code'=>'invoice_line','fd.product_type'=>'invoice_line','fd.fk_product'=>'product','p.ref'=>'product','p.label'=>'product','p.accountancy_code_sell'=>'product','f.fk_user_author'=>'user','uc.login'=>'user','f.fk_user_valid'=>'user','uv.login'=>'user');
$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
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'facture'";
@ -221,6 +221,8 @@ class modFacture extends DolibarrModules
$this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_pays as c on s.fk_pays = c.rowid,';
$this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'facture as f';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'user as uc ON f.fk_user_author = uc.rowid';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'user as uv ON f.fk_user_valid = uc.rowid';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'facture_extrafields as extra ON f.rowid = extra.fk_object';
$this->export_sql_end[$r] .=' , '.MAIN_DB_PREFIX.'facturedet as fd';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'product as p on (fd.fk_product = p.rowid)';
@ -232,10 +234,10 @@ class modFacture extends DolibarrModules
$this->export_label[$r]='CustomersInvoicesAndPayments'; // Translation key (used only if key ExportDataset_xxx_z not found)
$this->export_icon[$r]='bill';
$this->export_permission[$r]=array(array("facture","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.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.facnumber'=>"InvoiceRef",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.date_lim_reglement'=>"DateDue",'f.total'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_private'=>"NotePrivate",'f.note_public'=>"NotePublic",'p.rowid'=>'PaymentId','pf.amount'=>'AmountPayment','p.datep'=>'DatePayment','p.num_paiement'=>'PaymentNumber');
$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.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.facnumber'=>"InvoiceRef",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.date_lim_reglement'=>"DateDue",'f.total'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_private'=>"NotePrivate",'f.note_public'=>"NotePublic",'f.fk_user_author'=>'CreatedById','uc.login'=>'CreatedByLogin','f.fk_user_valid'=>'ValidatedById','uv.login'=>'ValidatedByLogin','p.rowid'=>'PaymentId','pf.amount'=>'AmountPayment','p.datep'=>'DatePayment','p.num_paiement'=>'PaymentNumber');
//$this->export_TypeFields_array[$r]=array('s.rowid'=>"List:societe:nom",'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.code_compta'=>'Text','s.code_compta_fournisseur'=>'Text','s.tva_intra'=>'Text','f.rowid'=>"List:facture:facnumber",'f.facnumber'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.date_lim_reglement'=>"Date",'f.total'=>"Number",'f.total_ttc'=>"Number",'f.tva'=>"Number",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_private'=>"Text",'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.code_compta'=>'Text','s.code_compta_fournisseur'=>'Text','s.tva_intra'=>'Text','f.rowid'=>"List:facture:facnumber",'f.facnumber'=>"Text",'f.datec'=>"Date",'f.datef'=>"Date",'f.date_lim_reglement'=>"Date",'f.total'=>"Number",'f.total_ttc'=>"Number",'f.tva'=>"Number",'f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_private'=>"Text",'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.code_compta'=>'company','s.code_compta_fournisseur'=>'company','s.tva_intra'=>'company','f.rowid'=>"invoice",'f.facnumber'=>"invoice",'f.datec'=>"invoice",'f.datef'=>"invoice",'f.date_lim_reglement'=>"invoice",'f.total'=>"invoice",'f.total_ttc'=>"invoice",'f.tva'=>"invoice",'f.paye'=>"invoice",'f.fk_statut'=>'invoice','f.note_private'=>"invoice",'f.note_public'=>"invoice",'p.rowid'=>'payment','pf.amount'=>'payment','p.datep'=>'payment','p.num_paiement'=>'payment');
$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.code_compta'=>'company','s.code_compta_fournisseur'=>'company','s.tva_intra'=>'company','f.rowid'=>"invoice",'f.facnumber'=>"invoice",'f.datec'=>"invoice",'f.datef'=>"invoice",'f.date_lim_reglement'=>"invoice",'f.total'=>"invoice",'f.total_ttc'=>"invoice",'f.tva'=>"invoice",'f.paye'=>"invoice",'f.fk_statut'=>'invoice','f.note_private'=>"invoice",'f.note_public'=>"invoice",'p.rowid'=>'payment','pf.amount'=>'payment','p.datep'=>'payment','p.num_paiement'=>'payment','f.fk_user_author'=>'user','uc.login'=>'user','f.fk_user_valid'=>'user','uv.login'=>'user');
$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
$sql="SELECT name, label, type, param FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'facture'";
@ -275,6 +277,8 @@ class modFacture extends DolibarrModules
$this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_pays as c on s.fk_pays = c.rowid,';
$this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'facture as f';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'user as uc ON f.fk_user_author = uc.rowid';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'user as uv ON f.fk_user_valid = uc.rowid';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'facture_extrafields as extra ON f.rowid = extra.fk_object';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'paiement_facture as pf ON pf.fk_facture = f.rowid';
$this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'paiement as p ON pf.fk_paiement = p.rowid';

View File

@ -583,8 +583,8 @@ class InterfaceActionsAuto extends DolibarrTriggers
$actioncomm->contact = $contactforaction;
$actioncomm->societe = $societeforaction;
$actioncomm->author = $user; // User saving action
$actioncomm->usertodo = $user; // User owner of action
//$actioncomm->userdone = $user; // User doing action
$actioncomm->usertodo = $user; // User action is assigned to (owner of action)
//$actioncomm->userdone = $user; // User doing action (deprecated, not used anymore)
$actioncomm->fk_element = $object->id;
$actioncomm->elementtype = $object->element;

View File

@ -165,7 +165,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers
$info=$object->_load_ldap_info();
$dn=$object->_load_ldap_dn($info);
$result=$ldap->delete($dn,$info,$user);
$result=$ldap->delete($dn);
if ($result < 0)
{
$this->error="ErrorLDAP ".$ldap->error;
@ -322,7 +322,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers
$info=$object->_load_ldap_info();
$dn=$object->_load_ldap_dn($info);
$result=$ldap->delete($dn,$info,$user);
$result=$ldap->delete($dn);
if ($result < 0)
{
$this->error="ErrorLDAP ".$ldap->error;
@ -399,7 +399,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers
$info=$object->_load_ldap_info();
$dn=$object->_load_ldap_dn($info);
$result=$ldap->delete($dn,$info,$user);
$result=$ldap->delete($dn);
if ($result < 0)
{
$this->error="ErrorLDAP ".$ldap->error;
@ -576,7 +576,7 @@ class InterfaceLdapsynchro extends DolibarrTriggers
$info=$object->_load_ldap_info();
$dn=$object->_load_ldap_dn($info);
$result=$ldap->delete($dn,$info,$user);
$result=$ldap->delete($dn);
if ($result < 0)
{
$this->error="ErrorLDAP ".$ldap->error;

View File

@ -24,6 +24,7 @@
* \brief Fichier de la classe des gestion des fiches interventions
*/
require_once DOL_DOCUMENT_ROOT .'/core/class/commonobject.class.php';
require_once DOL_DOCUMENT_ROOT .'/core/class/commonobjectline.class.php';
/**
@ -998,7 +999,7 @@ class Fichinter extends CommonObject
/**
* Classe permettant la gestion des lignes d'intervention
*/
class FichinterLigne
class FichinterLigne extends CommonObjectLine
{
var $db;
var $error;

View File

@ -52,14 +52,14 @@ if ($_GET["id"])
//on veut supprimer une cat<61>gorie
if ($_REQUEST["cat"])
{
$cat = new Categorie($db,$_REQUEST["cat"]);
$cat = new Categorie($db);
$cat->del_product($product);
}
//on veut ajouter une cat<61>gorie
if (isset($_REQUEST["add_cat"]) && $_REQUEST["add_cat"]>=0)
{
$cat = new Categorie($db,$_REQUEST["add_cat"]);
$cat = new Categorie($db);
$cat->add_product($product);
}

View File

@ -149,7 +149,7 @@ if ($resql)
if (isset($catid))
{
print "<div id='ways'>";
$c = new Categorie($db, $catid);
$c = new Categorie($db);
$ways = $c->print_all_ways(' &gt; ','fourn/product/liste.php');
print " &gt; ".$ways[0]."<br>\n";
print "</div><br>";

View File

@ -1070,7 +1070,7 @@ else
// Liste des utiliseurs du groupes choisi dans la config
$idGroupValid = $cp->getConfCP('userGroup');
$validator = new UserGroup($db,$idGroupValid);
$validator = new UserGroup($db);
$valideur = $validator->listUsersForGroup('',1);
print '<td>';

View File

@ -0,0 +1,10 @@
/*
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
For licensing, see LICENSE.md or http://ckeditor.com/license
*/
CKEDITOR.skin.name="moono";CKEDITOR.skin.ua_editor="ie,iequirks,ie7,ie8,gecko";CKEDITOR.skin.ua_dialog="ie,iequirks,ie7,ie8,opera";
CKEDITOR.skin.chameleon=function(){var b=function(){return function(b,e){for(var a=b.match(/[^#]./g),c=0;3>c;c++){var f=a,h=c,d;d=parseInt(a[c],16);d=("0"+(0>e?0|d*(1+e):0|d+(255-d)*e).toString(16)).slice(-2);f[h]=d}return"#"+a.join("")}}(),c=function(){var b=new CKEDITOR.template("background:#{to};background-image:-webkit-gradient(linear,lefttop,leftbottom,from({from}),to({to}));background-image:-moz-linear-gradient(top,{from},{to});background-image:-webkit-linear-gradient(top,{from},{to});background-image:-o-linear-gradient(top,{from},{to});background-image:-ms-linear-gradient(top,{from},{to});background-image:linear-gradient(top,{from},{to});filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='{from}',endColorstr='{to}');");return function(c,
a){return b.output({from:c,to:a})}}(),f={editor:new CKEDITOR.template("{id}.cke_chrome [border-color:{defaultBorder};] {id} .cke_top [ {defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_bottom [{defaultGradient}border-top-color:{defaultBorder};] {id} .cke_resizer [border-right-color:{ckeResizer}] {id} .cke_dialog_title [{defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_dialog_footer [{defaultGradient}outline-color:{defaultBorder};border-top-color:{defaultBorder};] {id} .cke_dialog_tab [{lightGradient}border-color:{defaultBorder};] {id} .cke_dialog_tab:hover [{mediumGradient}] {id} .cke_dialog_contents [border-top-color:{defaultBorder};] {id} .cke_dialog_tab_selected, {id} .cke_dialog_tab_selected:hover [background:{dialogTabSelected};border-bottom-color:{dialogTabSelectedBorder};] {id} .cke_dialog_body [background:{dialogBody};border-color:{defaultBorder};] {id} .cke_toolgroup [{lightGradient}border-color:{defaultBorder};] {id} a.cke_button_off:hover, {id} a.cke_button_off:focus, {id} a.cke_button_off:active [{mediumGradient}] {id} .cke_button_on [{ckeButtonOn}] {id} .cke_toolbar_separator [background-color: {ckeToolbarSeparator};] {id} .cke_combo_button [border-color:{defaultBorder};{lightGradient}] {id} a.cke_combo_button:hover, {id} a.cke_combo_button:focus, {id} .cke_combo_on a.cke_combo_button [border-color:{defaultBorder};{mediumGradient}] {id} .cke_path_item [color:{elementsPathColor};] {id} a.cke_path_item:hover, {id} a.cke_path_item:focus, {id} a.cke_path_item:active [background-color:{elementsPathBg};] {id}.cke_panel [border-color:{defaultBorder};] "),
panel:new CKEDITOR.template(".cke_panel_grouptitle [{lightGradient}border-color:{defaultBorder};] .cke_menubutton_icon [background-color:{menubuttonIcon};] .cke_menubutton:hover .cke_menubutton_icon, .cke_menubutton:focus .cke_menubutton_icon, .cke_menubutton:active .cke_menubutton_icon [background-color:{menubuttonIconHover};] .cke_menuseparator [background-color:{menubuttonIcon};] a:hover.cke_colorbox, a:focus.cke_colorbox, a:active.cke_colorbox [border-color:{defaultBorder};] a:hover.cke_colorauto, a:hover.cke_colormore, a:focus.cke_colorauto, a:focus.cke_colormore, a:active.cke_colorauto, a:active.cke_colormore [background-color:{ckeColorauto};border-color:{defaultBorder};] ")};
return function(g,e){var a=g.uiColor,a={id:"."+g.id,defaultBorder:b(a,-0.1),defaultGradient:c(b(a,0.9),a),lightGradient:c(b(a,1),b(a,0.7)),mediumGradient:c(b(a,0.8),b(a,0.5)),ckeButtonOn:c(b(a,0.6),b(a,0.7)),ckeResizer:b(a,-0.4),ckeToolbarSeparator:b(a,0.5),ckeColorauto:b(a,0.8),dialogBody:b(a,0.7),dialogTabSelected:c("#FFFFFF","#FFFFFF"),dialogTabSelectedBorder:"#FFF",elementsPathColor:b(a,-0.6),elementsPathBg:a,menubuttonIcon:b(a,0.5),menubuttonIconHover:b(a,0.3)};return f[e].output(a).replace(/\[/g,
"{").replace(/\]/g,"}")}}();

Binary file not shown.

Before

Width:  |  Height:  |  Size: 229 B

View File

@ -57,7 +57,7 @@ pHeader('',''); // No next step for navigation buttons. Next step is defined
//print "<br>\n";
//print $langs->trans("InstallEasy")."<br><br>\n";
print '<b>'.$langs->trans("MiscellaneousChecks")."</b>:<br>\n";
print '<h3>'.$langs->trans("MiscellaneousChecks").":</h3>\n";
// Check browser
$useragent=$_SERVER['HTTP_USER_AGENT'];
@ -440,7 +440,7 @@ else
}
}
$choice .= '<tr class="listofchoices" '.($recommended_choice ? 'style="background-color:lightyellow"' : '').'>';
$choice .= '<tr class="listofchoices '.($recommended_choice ? 'choiceselected' : '').'">';
$choice .= '<td class="listofchoices nowrap" align="center"><b>'.$langs->trans("Upgrade").'<br>'.$newversionfrom.$newversionfrombis.' -> '.$newversionto.'</b></td>';
$choice .= '<td class="listofchoices">';
$choice .= $langs->trans("UpgradeDesc");

View File

@ -18,9 +18,8 @@
body {
font-size:13px;
font-family: Verdana, Tahoma, Arial, Helvetica, sans-serif;
background: #f9f9f9 url(headbg.jpg) 0 0 no-repeat;
/* background-color: #F4F4F4; */
font-family: Verdana, Arial, Helvetica, Tahoma, sans-serif;
background: #f6f6f6;
margin: 15px 30px 10px;
}
@ -33,8 +32,8 @@ span.titre {
font-size: 1.1em;
font-weight: bold;
background: #FFFFFF;
color: #4965B3;
border: 1px solid #8CACBB;
color: #444;
border: 1px solid #999;
padding: 5px 5px 5px 5px;
margin: 0 0 0 0;
}
@ -45,8 +44,8 @@ font-weight: bold;
color: #4965B3;
padding: 0 1.2em 0.5em 2em;
margin: 1.2em 1.2em 1.2em 1.2em;
border-bottom: 1px solid #8CACBB;
border-right: 1px solid #8CACBB;
border-bottom: 1px solid #999;
border-right: 1px solid #999;
text-align: right;
}
@ -71,10 +70,13 @@ input:-webkit-autofill {
}
table.main {
background: #F0F0F0 url(background.png) repeat-x;
background: #FfFfFf;
text-align: left;
border: 1px solid #8CACBB;
border: 1px solid #999;
color: #000000;
-webkit-box-shadow: 3px 3px 4px #DDD !important;
-moz-box-shadow: 3px 3px 4px #DDD !important;
box-shadow: 3px 3px 4px #DDD !important;
}
table.main-inside {
@ -89,7 +91,7 @@ table.listofchoices, tr.listofchoices, td.listofchoices {
border-collapse: collapse;
padding: 4px;
color: #000000;
border: 1px solid #888888 !important;
border: 1px solid #999 !important;
}
tr.listofchoices {
@ -104,8 +106,8 @@ tr.listofchoices {
.installchoices table tr td {
margin-left: 2px;
margin-right: 2px;
border-bottom: 1px solid #8CACBB;
border-right: 1px solid #8CACBB;
border-bottom: 1px solid #999;
border-right: 1px solid #999;
color: #000000;
}
@ -178,6 +180,7 @@ margin-top: 10px;
font-size:16px;
font-weight: normal;
color: #4965B3;
text-shadow: 2px 1px 2px #c0c0c0;
}
tr.bg1 {
@ -212,7 +215,7 @@ font-size: 12px;
.install
{
border: 1px solid #8CACBB;
border: 1px solid #999;
padding: 4px 4px 4px 4px;
}
@ -246,3 +249,9 @@ ul {
a.button:hover {
text-decoration:none;
}
.choiceselected {
background-color: #dfd;
background-repeat: repeat-x;
background-position: top left;
}

View File

@ -307,10 +307,10 @@ if (! empty($force_install_message))
include_once $dir."/".$file;
if ($type == 'sqlite') continue; // We hide sqlite because support can't be complete unti sqlit does not manage foreign key creation after table creation
// Version min of database
$versionbasemin=explode('.',$class::versionmin);
$note='('.$class::label.' >= '.$class::versionmin.')';
$versionbasemin=explode('.',$class::VERSIONMIN);
$note='('.$class::LABEL.' >= '.$class::VERSIONMIN.')';
// Switch to mysql if mysqli is not present
if ($defaultype=='mysqli' && !function_exists('mysqli_connect')) $defaultype = 'mysql';

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

View File

@ -32,7 +32,7 @@
-- Regions
--
insert into llx_c_regions (rowid,fk_pays,code_region,cheflieu,tncc,nom) values (1,0,0,'0',0,'-');
insert into llx_c_regions (rowid,fk_pays,code_region,cheflieu,tncc,nom) values (0,0,0,'0',0,'-');
-- Regions France (id country=1)
insert into llx_c_regions (rowid,fk_pays,code_region,cheflieu,tncc,nom) values ( 101, 1, 1,'97105',3,'Guadeloupe');

File diff suppressed because it is too large Load Diff

View File

@ -38,7 +38,7 @@ create table llx_c_email_templates
(
rowid integer AUTO_INCREMENT PRIMARY KEY,
entity integer DEFAULT 1 NOT NULL, -- multi company id
type_template varchar(32), -- template for wich type of email (send invoice by email, send order, ...)
type_template varchar(32), -- template for which type of email (send invoice by email, send order, ...)
datec datetime,
label varchar(255),
content text
@ -1681,4 +1681,7 @@ INSERT INTO llx_accountingaccount (rowid, fk_pcg_version, pcg_type, pcg_subtype,
-- Fix: Missing instruction not correctly done into 3.5
-- VPGSQL8.2 ALTER TABLE llx_facture_fourn ALTER fk_mode_reglement DROP NOT NULL;
-- VPGSQL8.2 ALTER TABLE llx_facture_fourn ALTER fk_cond_reglement DROP NOT NULL;
UPDATE llx_actioncomm set fk_user_action = fk_user_done where fk_user_done > 0 and (fk_user_action is null or fk_user_action = 0);

File diff suppressed because it is too large Load Diff

View File

@ -108,14 +108,6 @@ UPDATE llx_product p SET p.stock= (SELECT SUM(ps.reel) FROM llx_product_stock ps
-- VMYSQL DELETE from llx_menu where module = 'margins' and url = '/margin/index.php' and not exists (select * from llx_const where name = 'MAIN_MODULE_MARGIN' or name = 'MAIN_MODULE_MARGINS');
-- Requests to clean old tables or fields
-- DROP TABLE llx_c_methode_commande_fournisseur;
-- DROP TABLE llx_c_source;
-- DROP TABLE llx_cond_reglement;
-- DROP TABLE llx_expedition_methode;
-- DROP TABLE llx_product_fournisseur;
-- ALTER TABLE llx_product_fournisseur_price DROP COLUMN fk_product_fournisseur;
ALTER TABLE llx_product_fournisseur_price DROP FOREIGN KEY fk_product_fournisseur;
@ -150,3 +142,38 @@ drop table tmp_societe_double;
UPDATE llx_projet_task SET fk_task_parent = 0 WHERE fk_task_parent = rowid
UPDATE llx_actioncomm set fk_user_action = fk_user_done where fk_user_done > 0 and (fk_user_action is null or fk_user_action = 0);
-- Requests to clean old tables or external modules tables
-- DROP TABLE llx_c_methode_commande_fournisseur;
-- DROP TABLE llx_c_source;
-- DROP TABLE llx_congespayes;
-- DROP TABLE llx_congespayes_config;
-- DROP TABLE llx_congespayes_log;
-- DROP TABLE llx_congespayes_events;
-- DROP TABLE llx_congespayes_users;
-- DROP TABLE llx_compta;
-- DROP TABLE llx_compta_compte_generaux;
-- DROP TABLE llx_compta_account;
-- DROP TABLE llx_cabinetmed*;
-- DROP TABLE llx_cond_reglement;
-- DROP TABLE llx_expedition_methode;
-- DROP TABLE llx_product_fournisseur;
-- DROP TABLE llx_element_rang;
-- DROP TABLE llx_dolicloud_customers;
-- DROP TABLE llx_dolicloud_emailstemplates;
-- DROP TABLE llx_dolicloud_stats;
-- DROP TABLE llx_submitew_message;
-- DROP TABLE llx_submitew_targets;
-- DROP TABLE llx_submitew_targets_param;
-- DROP TABLE llx_pos_cash;
-- DROP TABLE llx_pos_control_cash;
-- DROP TABLE llx_pos_facture;
-- DROP TABLE llx_pos_moviments;
-- DROP TABLE llx_pos_ticketdet;

View File

@ -45,9 +45,9 @@ create table llx_actioncomm
fk_parent integer NOT NULL default 0,
fk_user_action integer, -- user id of owner of action (currently also user id of actor that must do action. In future, actors assigned to action will be an array into table llx_actioncomm_resources)
transparency integer, -- transparency (ical standard). used to say if user assigned to event are busy or not by event (in future version, this field is deprecated and will be stored into table llx_actioncomm_resources)
transparency integer, -- transparency (ical standard). used to say if people assigned to event are busy or not by event (in future version, this field is deprecated and will be stored into table llx_actioncomm_resources)
fk_user_done integer, -- user id of people that has made action (deprecated)
fk_user_done integer, -- user id of user that has made action (deprecated)
priority smallint,
fulldayevent smallint NOT NULL default 0,

View File

@ -19,5 +19,7 @@
ALTER TABLE llx_c_departements ADD UNIQUE uk_departements (code_departement,fk_region);
ALTER TABLE llx_c_departements ADD INDEX idx_departements_fk_region (fk_region);
ALTER TABLE llx_c_departements ADD CONSTRAINT fk_departements_fk_region FOREIGN KEY (fk_region) REFERENCES llx_c_regions (rowid);

View File

@ -21,8 +21,15 @@ create table llx_c_email_templates
(
rowid integer AUTO_INCREMENT PRIMARY KEY,
entity integer DEFAULT 1 NOT NULL, -- multi company id
type_template varchar(32), -- template for wich type of email (send invoice by email, send order, ...)
module varchar(32), -- Nom du module en rapport avec le modele
type_template varchar(32), -- template for which type of email (send invoice by email, send order, ...)
sortorder smallint, -- Ordre affichage
private smallint DEFAULT 0 NOT NULL, -- Template public or private
fk_user integer, -- Id utilisateur si modele prive, sinon null
datec datetime,
tms timestamp,
label varchar(255),
content text
)ENGINE=innodb;

View File

@ -1,34 +0,0 @@
-- ============================================================================
-- Copyright (C) 2007-2009 Laurent Destailleur <eldy@users.sourceforge.net>
--
-- 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/>.
--
-- ============================================================================
create table llx_texts
(
rowid integer AUTO_INCREMENT PRIMARY KEY,
module varchar(32), -- Nom du module en rapport avec le modele
typemodele varchar(32), -- Type du modele
sortorder smallint, -- Ordre affichage
private smallint DEFAULT 0 NOT NULL, -- Modele publique ou prive
fk_user integer, -- Id utilisateur si modele prive, sinon null
title varchar(128), -- Titre du modele
filename varchar(128), -- Nom fichier si modele fichier
content text, -- Texte si modele texte
tms timestamp
)ENGINE=innodb;

View File

@ -168,7 +168,7 @@ if (! GETPOST("action") || preg_match('/upgrade/i',GETPOST('action')))
dolibarr_install_syslog("upgrade: ".$langs->transnoentities("ServerVersion")." : $version");
// Test database version
$versionmindb=$db::versionmin;
$versionmindb=$db::VERSIONMIN;
//print join('.',$versionarray).' - '.join('.',$versionmindb);
if (count($versionmindb) && count($versionarray)
&& versioncompare($versionarray,$versionmindb) < 0)

View File

@ -1412,7 +1412,7 @@ function migrate_price_propal($db,$langs,$conf)
dolibarr_install_syslog("upgrade2: Line $rowid: propalid=$obj->rowid pu=$pu qty=$qty tva_taux=$txtva remise_percent=$remise_percent remise_global=$remise_percent_global -> $total_ht, $total_tva, $total_ttc");
print ". ";
$propalligne->update_total($rowid);
$propalligne->update_total();
/* On touche pas a propal mere
@ -1521,7 +1521,7 @@ function migrate_price_contrat($db,$langs,$conf)
dolibarr_install_syslog("upgrade2: Line $rowid: contratdetid=$obj->rowid pu=$pu qty=$qty tva_taux=$txtva remise_percent=$remise_percent -> $total_ht, $total_tva, $total_ttc");
print ". ";
$contratligne->update_total($rowid);
$contratligne->update_total();
$i++;
}
@ -1606,7 +1606,7 @@ function migrate_price_commande($db,$langs,$conf)
dolibarr_install_syslog("upgrade2: Line $rowid: commandeid=$obj->rowid pu=$pu qty=$qty tva_taux=$txtva remise_percent=$remise_percent remise_global=$remise_percent_global -> $total_ht, $total_tva, $total_ttc");
print ". ";
$commandeligne->update_total($rowid);
$commandeligne->update_total();
/* On touche pas a facture mere
$commande = new Commande($db);
@ -1720,7 +1720,7 @@ function migrate_price_commande_fournisseur($db,$langs,$conf)
dolibarr_install_syslog("upgrade2: Line $rowid: commandeid=$obj->rowid pu=$pu qty=$qty tva_taux=$txtva remise_percent=$remise_percent remise_global=$remise_percent_global -> $total_ht, $total_tva, $total_ttc");
print ". ";
$commandeligne->update_total($rowid);
$commandeligne->update_total();
/* On touche pas a facture mere
$commande = new Commande($db);

View File

@ -47,7 +47,7 @@ DictionarySetup=Dictionary setup
Dictionary=Dictionaries
ErrorReservedTypeSystemSystemAuto=القيمة 'system' و 'systemauto' لهذا النوع محفوظ. يمكنك إستخدام 'user' كقيمة لإضافة السجل الخاص بك
ErrorCodeCantContainZero=لا يمكن إستخدام القيمة 0 لهذا الكود
DisableJavascript=تعطيل عمليات الجافا و الأجاكس
DisableJavascript=Disable JavaScript and Ajax functions (Recommended for blind person or text browsers)
ConfirmAjax=إستخدم تأكيد أجاكس المنبثق
UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string.
UseSearchToSelectCompany=Use autocompletion fields to choose third parties instead of using a list box.
@ -928,11 +928,14 @@ EventsSetup=الإعداد للمناسبات الجذوع
LogEvents=مراجعة الحسابات الأحداث الأمنية
Audit=المراجعة
InfoDolibarr=Infos Dolibarr
InfoBrowser=Infos Browser
InfoOS=Infos OS
InfoWebServer=Infos web server
InfoDatabase=Infos database
InfoPHP=Infos PHP
InfoPerf=Infos performances
BrowserName=Browser name
BrowserOS=Browser OS
ListEvents=مراجعة الأحداث
ListOfSecurityEvents=قائمة الأحداث الأمنية Dolibarr
SecurityEventsPurged=تطهير الاحداث الامنية
@ -1441,8 +1444,8 @@ ConfirmDeleteLine=هل أنت متأكد من أنك تريد حذف هذا ال
##### Tax #####
TaxSetup=الضرائب والمساهمات الاجتماعية والأرباح وحدة الإعداد
OptionVatMode=ضريبة القيمة المضافة المستحقة
OptionVATDefault=القياسية
OptionVATDebitOption=الخيار خدمات الخصم
OptionVATDefault=Cash basis
OptionVATDebitOption=Accrual basis
OptionVatDefaultDesc=ومن المقرر ان ضريبة القيمة المضافة : <br> -- التسليم / الدفع للسلع <br> -- على دفع تكاليف الخدمات
OptionVatDebitOptionDesc=ومن المقرر ان ضريبة القيمة المضافة : <br> -- التسليم / الدفع للسلع <br> -- على الفاتورة (الخصم) للخدمات
SummaryOfVatExigibilityUsedByDefault=Time of VAT exigibility by default according to chosen option:

View File

@ -124,11 +124,11 @@ CalcModeVATEngagement=Mode <b>%sVAT on incomes-expenses%s</b>.
CalcModeDebt=Mode <b>%sClaims-Debts%s</b> said <b>Commitment accounting</b>.
CalcModeEngagement=Mode <b>%sIncomes-Expenses%s</b> said <b>cash accounting</b>
CalcModeLT1= Mode <b>%sRE on customer invoices - suppliers invoices%s</b>
CalcModeLT1Debt=Modo <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Modo <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Modo <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Modo <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Modo <b>%sIRPF on suppliers invoices%s</b>
CalcModeLT1Debt=Mode <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Mode <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Mode <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Mode <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Mode <b>%sIRPF on suppliers invoices%s</b>
AnnualSummaryDueDebtMode=Balance of income and expenses, annual summary
AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary
AnnualByCompaniesDueDebtMode=ميزان الإيرادات والنفقات ، وبالتفصيل من قبل أطراف ثالثة ، وطريقة سداد <b>ديون sClaims ٪ ٪ ق</b> قال <b>الالتزام والمحاسبة.</b>

View File

@ -153,3 +153,4 @@ WarningCloseAlways=Warning, closing is done even if amount differs between sourc
WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box.
WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card).
WarningNotRelevant=Irrelevant operation for this dataset
WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers.

View File

@ -672,9 +672,12 @@ HelpCopyToClipboard=Use Ctrl+C to copy to clipboard
SaveUploadedFileWithMask=Save file on server with name "<strong>%s</strong>" (otherwise "%s")
OriginFileName=Original filename
SetDemandReason=Set source
SetBankAccount=Define Bank Account
AccountCurrency=Account Currency
ViewPrivateNote=View notes
XMoreLines=%s line(s) hidden
PublicUrl=Public URL
AddBox=Add box
# Week day
Monday=يوم الاثنين

View File

@ -47,7 +47,7 @@ DictionarySetup=Dictionary setup
Dictionary=Dictionaries
ErrorReservedTypeSystemSystemAuto=Value 'system' and 'systemauto' for type is reserved. You can use 'user' as value to add your own record
ErrorCodeCantContainZero=Code can't contain value 0
DisableJavascript=Изключване на Java скрипт и Ajax функции
DisableJavascript=Disable JavaScript and Ajax functions (Recommended for blind person or text browsers)
ConfirmAjax=Използвайте Аякс потвърждение изскачащи прозорци
UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string.
UseSearchToSelectCompany=Use autocompletion fields to choose third parties instead of using a list box.
@ -928,11 +928,14 @@ EventsSetup=Настройка за събития трупи
LogEvents=Събития одит на сигурността
Audit=Проверка
InfoDolibarr=Инфо за Dolibarr
InfoBrowser=Infos Browser
InfoOS=Инфо за OS
InfoWebServer=Инфо за уеб сървъра
InfoDatabase=Инфо за базата данни
InfoPHP=Инфо за PHP
InfoPerf=Infos performances
BrowserName=Browser name
BrowserOS=Browser OS
ListEvents=Одит събития
ListOfSecurityEvents=Списък на събитията Dolibarr сигурност
SecurityEventsPurged=Събития по сигурността прочиства
@ -1441,8 +1444,8 @@ ConfirmDeleteLine=Сигурни ли сте, че желаете да изтр
##### Tax #####
TaxSetup=Данъци, социални осигуровки и дивиденти модул за настройка
OptionVatMode=Дължимия ДДС
OptionVATDefault=Стандарт
OptionVATDebitOption=Вариант услуги по дебитни
OptionVATDefault=Cash basis
OptionVATDebitOption=Accrual basis
OptionVatDefaultDesc=Се дължи ДДС: <br> - При доставка на стоки (ние използваме датата на фактурата) <br> - Плащания за услуги
OptionVatDebitOptionDesc=Се дължи ДДС: <br> - При доставка на стоки (ние използваме датата на фактурата) <br> - По фактура (дебитно) за услуги
SummaryOfVatExigibilityUsedByDefault=Time of VAT exigibility by default according to chosen option:

View File

@ -124,11 +124,11 @@ CalcModeVATEngagement=Mode <b>%sVAT on incomes-expenses%s</b>.
CalcModeDebt=Mode <b>%sClaims-Debts%s</b> said <b>Commitment accounting</b>.
CalcModeEngagement=Mode <b>%sIncomes-Expenses%s</b> said <b>cash accounting</b>
CalcModeLT1= Mode <b>%sRE on customer invoices - suppliers invoices%s</b>
CalcModeLT1Debt=Modo <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Modo <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Modo <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Modo <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Modo <b>%sIRPF on suppliers invoices%s</b>
CalcModeLT1Debt=Mode <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Mode <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Mode <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Mode <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Mode <b>%sIRPF on suppliers invoices%s</b>
AnnualSummaryDueDebtMode=Balance of income and expenses, annual summary
AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary
AnnualByCompaniesDueDebtMode=Баланс на приходи и разходи, подробно от трети страни, каза режим <b>%sClaims Debt%sS ангажимент счетоводство.</b>

View File

@ -153,3 +153,4 @@ WarningCloseAlways=Внимание, затваряне се прави, дор
WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box.
WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card).
WarningNotRelevant=Irrelevant operation for this dataset
WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers.

View File

@ -672,9 +672,12 @@ HelpCopyToClipboard=Използвайте Ctrl+C за да копирате в
SaveUploadedFileWithMask=Запишете файла на сървъра с име "<strong>%s</strong>" (otherwise "%s")
OriginFileName=Оригинално име на файла
SetDemandReason=Set source
SetBankAccount=Define Bank Account
AccountCurrency=Account Currency
ViewPrivateNote=View notes
XMoreLines=%s line(s) hidden
PublicUrl=Public URL
AddBox=Add box
# Week day
Monday=Понеделник

View File

@ -47,7 +47,7 @@ DictionarySetup=Dictionary setup
Dictionary=Dictionaries
ErrorReservedTypeSystemSystemAuto=Value 'system' and 'systemauto' for type is reserved. You can use 'user' as value to add your own record
ErrorCodeCantContainZero=Code can't contain value 0
DisableJavascript=Disable JavaScript and Ajax functions
DisableJavascript=Disable JavaScript and Ajax functions (Recommended for blind person or text browsers)
ConfirmAjax=Use Ajax confirmation popups
UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string.
UseSearchToSelectCompany=Use autocompletion fields to choose third parties instead of using a list box.
@ -928,11 +928,14 @@ EventsSetup=Setup for events logs
LogEvents=Security audit events
Audit=Audit
InfoDolibarr=Infos Dolibarr
InfoBrowser=Infos Browser
InfoOS=Infos OS
InfoWebServer=Infos web server
InfoDatabase=Infos database
InfoPHP=Infos PHP
InfoPerf=Informacije o performansama
BrowserName=Browser name
BrowserOS=Browser OS
ListEvents=Audit events
ListOfSecurityEvents=List of Dolibarr security events
SecurityEventsPurged=Security events purged
@ -1441,8 +1444,8 @@ ConfirmDeleteLine=Are you sure you want to delete this line ?
##### Tax #####
TaxSetup=Taxes, social contributions and dividends module setup
OptionVatMode=VAT due
OptionVATDefault=Standard
OptionVATDebitOption=Option services on Debit
OptionVATDefault=Cash basis
OptionVATDebitOption=Accrual basis
OptionVatDefaultDesc=VAT is due:<br>- on delivery for goods (we use invoice date)<br>- on payments for services
OptionVatDebitOptionDesc=VAT is due:<br>- on delivery for goods (we use invoice date)<br>- on invoice (debit) for services
SummaryOfVatExigibilityUsedByDefault=Time of VAT exigibility by default according to chosen option:

View File

@ -124,11 +124,11 @@ CalcModeVATEngagement=Mode <b>%sVAT on incomes-expenses%s</b>.
CalcModeDebt=Mode <b>%sClaims-Debts%s</b> said <b>Commitment accounting</b>.
CalcModeEngagement=Mode <b>%sIncomes-Expenses%s</b> said <b>cash accounting</b>
CalcModeLT1= Mode <b>%sRE on customer invoices - suppliers invoices%s</b>
CalcModeLT1Debt=Modo <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Modo <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Modo <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Modo <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Modo <b>%sIRPF on suppliers invoices%s</b>
CalcModeLT1Debt=Mode <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Mode <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Mode <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Mode <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Mode <b>%sIRPF on suppliers invoices%s</b>
AnnualSummaryDueDebtMode=Balance of income and expenses, annual summary
AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary
AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by third parties, mode <b>%sClaims-Debts%s</b> said <b>Commitment accounting</b>.

View File

@ -153,3 +153,4 @@ WarningCloseAlways=Warning, closing is done even if amount differs between sourc
WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box.
WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card).
WarningNotRelevant=Irrelevant operation for this dataset
WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers.

View File

@ -672,9 +672,12 @@ HelpCopyToClipboard=Use Ctrl+C to copy to clipboard
SaveUploadedFileWithMask=Save file on server with name "<strong>%s</strong>" (otherwise "%s")
OriginFileName=Original filename
SetDemandReason=Set source
SetBankAccount=Define Bank Account
AccountCurrency=Account Currency
ViewPrivateNote=View notes
XMoreLines=%s line(s) hidden
PublicUrl=Public URL
AddBox=Add box
# Week day
Monday=Monday

View File

@ -47,7 +47,7 @@ DictionarySetup=Dictionary setup
Dictionary=Dictionaries
ErrorReservedTypeSystemSystemAuto=L'ús del tipus 'system' i 'systemauto' està reservat. Podeu utilitzar 'user' com a valor per afegir el seu propi registre
ErrorCodeCantContainZero=El codi no pot contenir el valor 0
DisableJavascript=Desactivar les funcions Javascript
DisableJavascript=Disable JavaScript and Ajax functions (Recommended for blind person or text browsers)
ConfirmAjax=Utilitzar els popups de confirmació Ajax
UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string.
UseSearchToSelectCompany=Use autocompletion fields to choose third parties instead of using a list box.
@ -928,11 +928,14 @@ EventsSetup=Configuració del registre d'esdeveniments
LogEvents=Auditoria de la seguretat d'esdeveniments
Audit=Auditoria
InfoDolibarr=Info Dolibarr
InfoBrowser=Infos Browser
InfoOS=Info SO
InfoWebServer=Info servidor
InfoDatabase=Info base de dades
InfoPHP=Info PHP
InfoPerf=Info rendiment
BrowserName=Browser name
BrowserOS=Browser OS
ListEvents=Auditoria d'esdeveniments
ListOfSecurityEvents=Llistat d'esdeveniments de seguretat Dolibarr
SecurityEventsPurged=Esdeveniments de seguretat purgats
@ -1441,8 +1444,8 @@ ConfirmDeleteLine=Esteu segur de voler eliminar aquesta línia?
##### Tax #####
TaxSetup=Configuració del mòdul d'impostos, càrregues socials i dividends
OptionVatMode=Opció de càrrega d'IVA
OptionVATDefault=Estandard
OptionVATDebitOption=Opció serveis a dèbit
OptionVATDefault=Cash basis
OptionVATDebitOption=Accrual basis
OptionVatDefaultDesc=La càrrega de l'IVA és: <br>-en l'enviament dels béns (en la pràctica s'usa la data de la factura)<br>-sobre el pagament pels serveis
OptionVatDebitOptionDesc=La càrrega de l'IVA és: <br>-en l'enviament dels béns en la pràctica s'usa la data de la factura<br>-sobre la facturació dels serveis
SummaryOfVatExigibilityUsedByDefault=Time of VAT exigibility by default according to chosen option:

View File

@ -124,11 +124,11 @@ CalcModeVATEngagement=Mode <b>%sVAT on incomes-expenses%s</b>.
CalcModeDebt=Mode <b>%sClaims-Debts%s</b> said <b>Commitment accounting</b>.
CalcModeEngagement=Mode <b>%sIncomes-Expenses%s</b> said <b>cash accounting</b>
CalcModeLT1= Mode <b>%sRE on customer invoices - suppliers invoices%s</b>
CalcModeLT1Debt=Modo <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Modo <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Modo <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Modo <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Modo <b>%sIRPF on suppliers invoices%s</b>
CalcModeLT1Debt=Mode <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Mode <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Mode <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Mode <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Mode <b>%sIRPF on suppliers invoices%s</b>
AnnualSummaryDueDebtMode=Balance of income and expenses, annual summary
AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary
AnnualByCompaniesDueDebtMode=Balanç d'ingressos i despeses, desglossat per tercers, en mode <b>%sCrèdits-Deutes%s </ b> anomenada<b> comptabilitat de compromís</b>.

View File

@ -153,3 +153,4 @@ WarningCloseAlways=Avís, el tancament és realitzat encara que la quantitat tot
WarningUsingThisBoxSlowDown=Atenció, l'ús d'aquest panell provoca serioses alentiments en les pàgines que mostren aquest panell.
WarningClickToDialUserSetupNotComplete=La configuració de ClickToDial per al compte d'usuari no està completa (vegeu la pestanya ClickToDial en la seva fitxa d'usuari)
WarningNotRelevant=Operació irrellevant per a aquest conjunt de dades
WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers.

View File

@ -672,9 +672,12 @@ HelpCopyToClipboard=Use Ctrl+C to copy to clipboard
SaveUploadedFileWithMask=Save file on server with name "<strong>%s</strong>" (otherwise "%s")
OriginFileName=Original filename
SetDemandReason=Set source
SetBankAccount=Define Bank Account
AccountCurrency=Account Currency
ViewPrivateNote=View notes
XMoreLines=%s line(s) hidden
PublicUrl=Public URL
AddBox=Add box
# Week day
Monday=Dilluns

View File

@ -47,7 +47,7 @@ DictionarySetup=Dictionary setup
Dictionary=Dictionaries
ErrorReservedTypeSystemSystemAuto=Hodnota &quot;system&quot; a &quot;systemauto&quot; je vyhrazena. Můžete použít &quot;user&quot; k pŕidání vlastního záznamu
ErrorCodeCantContainZero=Kód nemůže obsahovat hodnotu 0
DisableJavascript=Zakázat JavaScript a Ajax funkce
DisableJavascript=Disable JavaScript and Ajax functions (Recommended for blind person or text browsers)
ConfirmAjax=Použít Ajax potvrzovací okénka
UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string.
UseSearchToSelectCompany=Use autocompletion fields to choose third parties instead of using a list box.
@ -928,11 +928,14 @@ EventsSetup=Nastavení pro akce kulatiny
LogEvents=Události bezpečnostní audit
Audit=Audit
InfoDolibarr=Informace Dolibarr
InfoBrowser=Infos Browser
InfoOS=Informace OS
InfoWebServer=Informace webový server
InfoDatabase=Informace databáze
InfoPHP=Informace PHP
InfoPerf=Infos představení
BrowserName=Browser name
BrowserOS=Browser OS
ListEvents=Audit událostí
ListOfSecurityEvents=Seznam Dolibarr událostí zabezpečení
SecurityEventsPurged=Bezpečnostní akce očistil
@ -1441,8 +1444,8 @@ ConfirmDeleteLine=Jste si jisti, že chcete smazat tento řádek?
##### Tax #####
TaxSetup=Daně, sociální příspěvky a dividendy modul nastavení
OptionVatMode=DPH z důvodu
OptionVATDefault=Standardní
OptionVATDebitOption=Volitelné služby na inkaso
OptionVATDefault=Cash basis
OptionVATDebitOption=Accrual basis
OptionVatDefaultDesc=DPH je splatná: <br> - Na dobírku za zboží (používáme data vystavení faktury) <br> - Plateb za služby
OptionVatDebitOptionDesc=DPH je splatná: <br> - Na dobírku za zboží (používáme data vystavení faktury) <br> - Na fakturu (debetní) na služby
SummaryOfVatExigibilityUsedByDefault=Time of VAT exigibility by default according to chosen option:

View File

@ -124,11 +124,11 @@ CalcModeVATEngagement=Režim <b>%sVAT z příjmů-expense%sS.</b>
CalcModeDebt=Režim <b>%sClaims-Debt%sS</b> řekl <b>Závazek účetnictví.</b>
CalcModeEngagement=Režim <b>%sIncomes-Expense%sS</b> řekl <b>hotovostní účetnictví</b>
CalcModeLT1= Mode <b>%sRE on customer invoices - suppliers invoices%s</b>
CalcModeLT1Debt=Modo <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Modo <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Modo <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Modo <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Modo <b>%sIRPF on suppliers invoices%s</b>
CalcModeLT1Debt=Mode <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Mode <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Mode <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Mode <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Mode <b>%sIRPF on suppliers invoices%s</b>
AnnualSummaryDueDebtMode=Bilance příjmů a výdajů, roční shrnutí
AnnualSummaryInputOutputMode=Bilance příjmů a výdajů, roční shrnutí
AnnualByCompaniesDueDebtMode=Bilance příjmů a výdajů, detail třetích stran, režim <b>%sClaims-Debt%sS</b> řekl <b>účtování závazků.</b>

View File

@ -153,3 +153,4 @@ WarningCloseAlways=Pozor, zavírání se provádí, i když částka liší zdro
WarningUsingThisBoxSlowDown=Upozornění Při použití tohoto políčka zpomalit vážně všechny stránky zobrazující krabici.
WarningClickToDialUserSetupNotComplete=Nastavení ClickToDial informací pro uživatele si nejsou kompletní (viz tab ClickToDial na vaše uživatelské karty).
WarningNotRelevant=Nerozhoduje provoz v našem souboru
WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers.

View File

@ -672,9 +672,12 @@ HelpCopyToClipboard=Použijte Ctrl + C zkopírujte do schránky
SaveUploadedFileWithMask=Save file on server with name "<strong>%s</strong>" (otherwise "%s")
OriginFileName=Original filename
SetDemandReason=Set source
SetBankAccount=Define Bank Account
AccountCurrency=Account Currency
ViewPrivateNote=View notes
XMoreLines=%s line(s) hidden
PublicUrl=Public URL
AddBox=Add box
# Week day
Monday=Pondělí

View File

@ -1,5 +1,5 @@
# Dolibarr language file - Source file is en_US - admin
Foundation=Foundation
Foundation=Grundlagt
Version=Version
VersionProgram=Version program
VersionLastInstall=Version oprindelige installere
@ -12,7 +12,7 @@ SessionId=Session ID
SessionSaveHandler=Handler for at gemme sessioner
SessionSavePath=Storage session localization
PurgeSessions=Purge af sessioner
ConfirmPurgeSessions=Do you really want to purge all sessions ? This will disconnect every user (except yourself).
ConfirmPurgeSessions=Vil du virkelig ønsker at slette alle sessioner? Dette vil afbryde alle brugere (undtagen dig selv).
NoSessionListWithThisHandler=Gem session handler konfigureret i din PHP tillader ikke at liste alle kørende sessioner.
LockNewSessions=Lås nye forbindelser
ConfirmLockNewSessions=Er du sikker på du vil begrænse enhver ny Dolibarr forbindelse til dig selv. Kun brugeren <b>%s</b> vil være i stand til at forbinde efter denne.
@ -47,13 +47,13 @@ DictionarySetup=Dictionary setup
Dictionary=Dictionaries
ErrorReservedTypeSystemSystemAuto=Value 'system' and 'systemauto' for type is reserved. You can use 'user' as value to add your own record
ErrorCodeCantContainZero=Kode kan ikke indeholde værdien 0
DisableJavascript=Deaktiver JavaScript og Ajax funktioner
DisableJavascript=Deaktiver JavaScript og Ajax-funktioner (Anbefales til blinde personer eller tekstbrowsere)
ConfirmAjax=Brug Ajax bekræftelse popups
UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string.
UseSearchToSelectCompany=Use autocompletion fields to choose third parties instead of using a list box.
UseSearchToSelectCompany=Brug automatisk udfyldning af felter til at vælge tredjeparter i stedet for at bruge en liste.
ActivityStateToSelectCompany= Tilføj en filter mulighed for at vise / skjule thirdparties, der i øjeblikket i aktivitet eller er ophørt den
UseSearchToSelectContactTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant CONTACT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string.
UseSearchToSelectContact=Use autocompletion fields to choose contact (instead of using a list box).
UseSearchToSelectContact=Brug automatisk udfyldning af felter til at vælge kontakt (i stedet for at bruge en liste).
SearchFilter=Søg filtre optioner
NumberOfKeyToSearch=NBR af tegn til at udløse søgning: %s
ViewFullDateActions=Vis fuld datoer aktioner i tredje ark
@ -68,7 +68,7 @@ CurrentTimeZone=Aktuelle tidszone
MySQLTimeZone=TimeZone MySql (database)
TZHasNoEffect=Dates are stored and returned by database server as if they were kept as submited string. The timezone has effect only when using UNIX_TIMESTAMP function (that should not be used by Dolibarr, so database TZ should have no effect, even if changed after data was entered).
Space=Space
Table=Table
Table=Tabel
Fields=Områder
Index=Index
Mask=Maske
@ -928,11 +928,14 @@ EventsSetup=Setup for begivenheder logfiler
LogEvents=Sikkerhed revision arrangementer
Audit=Audit
InfoDolibarr=Infos Dolibarr
InfoBrowser=Infos Browser
InfoOS=Infos OS
InfoWebServer=Infos web server
InfoDatabase=Infos database
InfoPHP=Infos PHP
InfoPerf=Infos performances
BrowserName=Browser name
BrowserOS=Browser OS
ListEvents=Revision begivenheder
ListOfSecurityEvents=Liste over Dolibarr sikkerhed begivenheder
SecurityEventsPurged=Sikkerhed begivenheder renset
@ -1441,8 +1444,8 @@ ConfirmDeleteLine=Er du sikker på du vil slette denne linje?
##### Tax #####
TaxSetup=Skatter, sociale bidrag og udbytte modul opsætning
OptionVatMode=Mulighed d'exigibilit de TVA
OptionVATDefault=Standard
OptionVATDebitOption=Mulighed tjenester sur overførselsautorisation
OptionVATDefault=Cash basis
OptionVATDebitOption=Accrual basis
OptionVatDefaultDesc=Moms skyldes: <br> - Om levering / betaling for varer <br> - Bestemmelser om betalinger for tjenester
OptionVatDebitOptionDesc=Moms skyldes: <br> - Om levering / betaling for varer <br> - På fakturaen (debet) for tjenesteydelser
SummaryOfVatExigibilityUsedByDefault=Time of VAT exigibility by default according to chosen option:

View File

@ -124,11 +124,11 @@ CalcModeVATEngagement=Mode <b>%sVAT on incomes-expenses%s</b>.
CalcModeDebt=Mode <b>%sClaims-Debts%s</b> said <b>Commitment accounting</b>.
CalcModeEngagement=Mode <b>%sIncomes-Expenses%s</b> said <b>cash accounting</b>
CalcModeLT1= Mode <b>%sRE on customer invoices - suppliers invoices%s</b>
CalcModeLT1Debt=Modo <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Modo <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Modo <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Modo <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Modo <b>%sIRPF on suppliers invoices%s</b>
CalcModeLT1Debt=Mode <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Mode <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Mode <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Mode <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Mode <b>%sIRPF on suppliers invoices%s</b>
AnnualSummaryDueDebtMode=Balance mellem indtægter og udgifter, årligt sammenfattet
AnnualSummaryInputOutputMode=Balance mellem indtægter og udgifter, årligt sammenfattet
AnnualByCompaniesDueDebtMode=Bilan des indtægter og dpenses, dtail par etager, da <b>mode %sCrances-Dettes %s</b> DIT <b>comptabilit d'engagement.</b>

View File

@ -153,3 +153,4 @@ WarningCloseAlways=Warning, closing is done even if amount differs between sourc
WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box.
WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card).
WarningNotRelevant=Irrelevant operation for this dataset
WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers.

View File

@ -23,8 +23,8 @@ FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p
FormatDateHourTextShort=%d %b %Y %H:%M
FormatDateHourText=%d %B %Y %H:%M
DatabaseConnection=Database forbindelse
NoTranslation=No translation
NoRecordFound=No record found
NoTranslation=Ingen oversættelse
NoRecordFound=Ingen poster fundet
NoError=Ingen fejl
Error=Fejl
ErrorFieldRequired=Felt ' %s' er påkrævet
@ -34,7 +34,7 @@ ErrorFailedToOpenFile=Kunne ikke åbne filen %s
ErrorCanNotCreateDir=Kan ikke oprette dir %s
ErrorCanNotReadDir=Ikke kan læse dir %s
ErrorConstantNotDefined=Parameter %s ikke defineret
ErrorUnknown=Unknown error
ErrorUnknown=Ukendt fejl
ErrorSQL=SQL Fejl
ErrorLogoFileNotFound=Logo fil ' %s' blev ikke fundet
ErrorGoToGlobalSetup=Gå til 'Company / Foundation "-opsætningen til at løse dette
@ -62,14 +62,14 @@ ErrorOnlyPngJpgSupported=Fejl, kun. Png og. Jpg billedformat filen understøttes
ErrorImageFormatNotSupported=Din PHP understøtter ikke funktioner til at konvertere billeder af dette format.
SetDate=Set date
SelectDate=Select a date
SeeAlso=See also %s
SeeAlso=Se også %s
BackgroundColorByDefault=Standard baggrundsfarve
FileWasNotUploaded=En fil er valgt for udlæg, men endnu ikke var uploadet. Klik på "Vedhæft fil" for dette.
NbOfEntries=Nb af tilmeldinger
GoToWikiHelpPage=Læs online hjælp (har brug for Internet-adgang)
GoToHelpPage=Læs hjælpe
RecordSaved=Optag gemt
RecordDeleted=Record deleted
RecordDeleted=Post slettet
LevelOfFeature=Niveau funktionsliste
NotDefined=Ikke defineret
DefinedAndHasThisValue=Defineret og værdi for
@ -120,7 +120,7 @@ Activated=Aktiveret
Closed=Lukket
Closed2=Lukket
Enabled=Aktiveret
Deprecated=Deprecated
Deprecated=Underkendt
Disable=Deaktivere
Disabled=Deaktiveret
Add=Tilføj
@ -147,8 +147,8 @@ ToClone=Klon
ConfirmClone=Vælg de data, du vil klone:
NoCloneOptionsSpecified=Ingen data at klone defineret.
Of=af
Go=Go
Run=Run
Go=Gå
Run=Kør
CopyOf=Kopi af
Show=Vise
ShowCardHere=Vis kort
@ -267,7 +267,7 @@ Quadri=Quadri
MonthOfDay=Måned fra den dato
HourShort=H
Rate=Hyppighed
UseLocalTax=Include tax
UseLocalTax=Incl. afgift
Bytes=Bytes
KiloBytes=Kilobyte
MegaBytes=Megabyte
@ -299,8 +299,8 @@ AmountTTCShort=Beløb (inkl. moms)
AmountHT=Beløb (efter skat)
AmountTTC=Beløb (inkl. moms)
AmountVAT=Beløb moms
AmountLT1=Amount tax 2
AmountLT2=Amount tax 3
AmountLT1=Beløb afgift 2
AmountLT2=Beløb afgift 3
AmountLT1ES=Beløb RE
AmountLT2ES=Beløb IRPF
AmountTotal=Samlet beløb
@ -320,7 +320,7 @@ TotalTTC=I alt (inkl. moms)
TotalTTCToYourCredit=I alt (inkl. moms) til dit kredit
TotalVAT=Total moms
TotalLT1=Total tax 2
TotalLT2=Total tax 3
TotalLT2=Total afgift 3
TotalLT1ES=Total RE
TotalLT2ES=Total IRPF
IncludedVAT=Inkluderet moms
@ -359,8 +359,8 @@ ActionDoneShort=Finished
ActionUncomplete=Uncomplete
CompanyFoundation=Company / Foundation
ContactsForCompany=Kontakter til denne tredjepart
ContactsAddressesForCompany=Contacts/addresses for this third party
AddressesForCompany=Addresses for this third party
ContactsAddressesForCompany=Kontakter/adresser for denne trediepart
AddressesForCompany=Adresse for denne trediepart
ActionsOnCompany=Aktioner om denne tredjepart
ActionsOnMember=Events Om dette medlem
NActions=%s aktioner
@ -396,7 +396,7 @@ OtherInformations=Andre informationer
Quantity=Mængde
Qty=Qty
ChangedBy=Ændret ved
ReCalculate=Recalculate
ReCalculate=Genberegn
ResultOk=Succes
ResultKo=Fejl
Reporting=Rapportering
@ -491,8 +491,8 @@ Report=Rapport
Keyword=Mot cl
Legend=Legend
FillTownFromZip=Udfyld byen fra zip
Fill=Fill
Reset=Reset
Fill=Udfyld
Reset=Nulstil
ShowLog=Vis log
File=Fil
Files=Files
@ -508,7 +508,7 @@ NbOfCustomers=Antal kunder
NbOfLines=Antal linjer
NbOfObjects=Antallet af objekter
NbOfReferers=Antal referers
Referers=Refering objects
Referers=Refererende objekt
TotalQuantity=Samlet mængde
DateFromTo=Fra %s til %s
DateFrom=Fra %s
@ -562,7 +562,7 @@ GoBack=Gå tilbage
CanBeModifiedIfOk=Kan ændres, hvis det er gyldigt
CanBeModifiedIfKo=Kan ændres, hvis ikke gyldigt
RecordModifiedSuccessfully=Optag modificerede held
RecordsModified=%s records modified
RecordsModified=%s poster rettet
AutomaticCode=Automatisk kode
NotManaged=Ikke lykkedes
FeatureDisabled=Feature handicappede
@ -593,7 +593,7 @@ ThisLimitIsDefinedInSetup=Dolibarr grænse (Menu hjemme-setup-sikkerhed): %s Kb,
NoFileFound=Ingen dokumenter gemmes i denne mappe
CurrentUserLanguage=Valgt sprog
CurrentTheme=Nuværende tema
CurrentMenuManager=Current menu manager
CurrentMenuManager=Aktuel menu manager
DisabledModules=Handikappede moduler
For=For
ForCustomer=For kunden
@ -607,7 +607,7 @@ Notes=Noter
AddNewLine=Tilføj ny linje
AddFile=Tilføj fil
ListOfFiles=Listen med tilgængelige filer
FreeZone=Free entry
FreeZone=Fri adgang
FreeLineOfType=Free entry of type
CloneMainAttributes=Klon formål med sine vigtigste attributter
PDFMerge=PDF Sammenflet
@ -655,15 +655,15 @@ ByYear=Ved år
ByMonth=efter måned
ByDay=Ved dag
BySalesRepresentative=Ved salgsrepræsentant
LinkedToSpecificUsers=Linked to a particular user contact
DeleteAFile=Delete a file
ConfirmDeleteAFile=Are you sure you want to delete file
NoResults=No results
ModulesSystemTools=Modules tools
LinkedToSpecificUsers=Linked til en bestemt bruger kontakt
DeleteAFile=Slet en fil
ConfirmDeleteAFile=Er du sikker du vil slette filen
NoResults=Ingen resultater
ModulesSystemTools=Modul værktøjer
Test=Test
Element=Element
NoPhotoYet=No pictures available yet
HomeDashboard=Home summary
NoPhotoYet=Inge billeder til rådighed
HomeDashboard=Hjem resume
Deductible=Deductible
from=from
toward=toward
@ -672,9 +672,12 @@ HelpCopyToClipboard=Use Ctrl+C to copy to clipboard
SaveUploadedFileWithMask=Save file on server with name "<strong>%s</strong>" (otherwise "%s")
OriginFileName=Original filename
SetDemandReason=Set source
SetBankAccount=Define Bank Account
AccountCurrency=Account Currency
ViewPrivateNote=View notes
XMoreLines=%s line(s) hidden
PublicUrl=Public URL
AddBox=Add box
# Week day
Monday=Mandag

View File

@ -47,7 +47,7 @@ DictionarySetup=Wörterbucheinstellungen
Dictionary=Wörterbücher
ErrorReservedTypeSystemSystemAuto=Die Werte 'system' und 'systemauto' für Typ sind reserviert. Sie können 'user' als Wert verwenden, um Ihren eigenen Datensatz hinzuzufügen
ErrorCodeCantContainZero=Code darf keinen Wert 0 enthalten
DisableJavascript=JavaScript- und Ajax-Funktionen deaktivieren
DisableJavascript=JavaScript- und Ajax-Funktionen deaktivieren (empfohlen für Blinde und Text-Browser)
ConfirmAjax=Ajax-Bestätigungs-Popups verwenden
UseSearchToSelectCompanyTooltip=Also if you have a large number of third parties (> 100 000), you can increase speed by setting constant COMPANY_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string.
UseSearchToSelectCompany=Suchfeld statt Listenansicht für Partnerauswahl verwenden.
@ -928,11 +928,14 @@ EventsSetup=Protokollierungseinstellungen
LogEvents=Protokollierte Ereignisse
Audit=Protokoll
InfoDolibarr=Infos Dolibarr
InfoBrowser=Infos Browser
InfoOS=Infos OS
InfoWebServer=Infos Webserver
InfoDatabase=Infos Datenbank
InfoPHP=Infos PHP
InfoPerf=Leistungs-Informationen
BrowserName=Browser name
BrowserOS=Browser OS
ListEvents=Liste aller protokollierten Ereignisse
ListOfSecurityEvents=Liste der sicherheitsrelevanten Ereignisse
SecurityEventsPurged=Security-Ereignisse gelöscht
@ -1034,7 +1037,7 @@ SuhosinSessionEncrypt=Sitzungsspeicher durch Suhosin verschlüsselt
ConditionIsCurrently=Einstellung ist aktuell %s
TestNotPossibleWithCurrentBrowsers=Automatische Erkennung nicht möglich
YouUseBestDriver=Sie verwenden den Treiber %s, dies ist derzeit der beste verfügbare.
YouDoNotUseBestDriver=You use drive %s but driver %s is recommended.
YouDoNotUseBestDriver=Sie verwenden Treiber %s, aber der Treiber %s wird empfohlen.
NbOfProductIsLowerThanNoPb=Sie haben nur %s Produkte/Dienstleistungen in der Datenbank. Daher ist keine bestimmte Optimierung erforderlich.
SearchOptim=Such Optimierung
YouHaveXProductUseSearchOptim=You have %s product into database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 into Home-Setup-Other, you limit the search to the beginning of strings making possible for database to use index and you should get an immediate response.
@ -1441,8 +1444,8 @@ ConfirmDeleteLine=Möchten Sie diese Zeile wirklich löschen?
##### Tax #####
TaxSetup=Steuer-, Sozialbeitrags- und Dividendenmodul-Einstellungen
OptionVatMode=MwSt. fällig
OptionVATDefault=Standard
OptionVATDebitOption=MwSt.Last-Option
OptionVATDefault=Cash basis
OptionVATDebitOption=Accrual basis
OptionVatDefaultDesc=Mehrwertsteuerschuld entsteht: <br>- Bei Lieferung/Zahlung für Waren<br>- Bei Zahlung für Dienstleistungen
OptionVatDebitOptionDesc=Mehrwertsteuerschuld entsteht: <br>- Bei Lieferung/Zahlung für Waren<br>- Bei Rechnungslegung (Lastschrift) für Dienstleistungen
SummaryOfVatExigibilityUsedByDefault=Standardmäßiger Zeitpunkt der MwSt.-Fälligkeit in Abhängigkeit zur derzeit gewählten Option:

View File

@ -124,11 +124,11 @@ CalcModeVATEngagement=Mode <b>%sVAT on incomes-expenses%s</b>.
CalcModeDebt=Mode <b>%sClaims-Debts%s</b> said <b>Commitment accounting</b>.
CalcModeEngagement=Mode <b>%sIncomes-Expenses%s</b> said <b>cash accounting</b>
CalcModeLT1= Mode <b>%sRE on customer invoices - suppliers invoices%s</b>
CalcModeLT1Debt=Modo <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Modo <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Modo <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Modo <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Modo <b>%sIRPF on suppliers invoices%s</b>
CalcModeLT1Debt=Mode <b>%sRE on customer invoices%s</b>
CalcModeLT1Rec= Mode <b>%sRE on suppliers invoices%s</b>
CalcModeLT2= Mode <b>%sIRPF on customer invoices - suppliers invoices%s</b>
CalcModeLT2Debt=Mode <b>%sIRPF on customer invoices%s</b>
CalcModeLT2Rec= Mode <b>%sIRPF on suppliers invoices%s</b>
AnnualSummaryDueDebtMode=Saldo der Erträge und Aufwendungen, Jahresübersicht
AnnualSummaryInputOutputMode=Saldo der Erträge und Aufwendungen, Jahresübersicht
AnnualByCompaniesDueDebtMode=Die Einnahmen/Ausgaben-Bilanz nach Partnern im Modus <b>%sForderungen-Verbindlichkeiten%s</b> meldet <b>Kameralistik</b>.

View File

@ -135,7 +135,7 @@ ErrorWarehouseMustDiffers=Quell- und Ziel-Lager müssen unterschiedlich sein
ErrorBadFormat=Falsches Format!
ErrorPaymentDateLowerThanInvoiceDate=Zahlungsdatum (%s) darf nicht vor Rechnungsdatum (%s) liegen für Rechnung %s.
ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Error, this member is not yet linked to any thirdparty. Link member to an existing third party or create a new thirdparty before creating subscription with invoice.
ErrorThereIsSomeDeliveries=Error, there is some deliveries linked to this shipment. Deletion refused.
ErrorThereIsSomeDeliveries=Fehler: Lieferung(en) zu dieser Sendung vorhanden. Löschen nicht möglich.
# Warnings
WarningMandatorySetupNotComplete=Zwingend notwendige Parameter sind noch nicht definiert
@ -153,3 +153,4 @@ WarningCloseAlways=Warning, closing is done even if amount differs between sourc
WarningUsingThisBoxSlowDown=Warnung: Der Einsatz dieser Box verlangsamt sämtliche Seiten mit dieser Box spürbar.
WarningClickToDialUserSetupNotComplete=Die ClickToDial-Informationen für Ihren Benutzer sind nicht vollständig (siehe Registerkarte ClickToDial auf Ihrer Benutzerkarte).
WarningNotRelevant=Irrelevant operation for this dataset
WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Feature disabled when display setup is optimized for blind person or text browsers.

View File

@ -672,9 +672,12 @@ HelpCopyToClipboard=Benutze Ctrl+C für Kopie in Zwischenablage
SaveUploadedFileWithMask=Datei auf dem Server speichern mit dem Namen "<strong>%s</strong>" (oder "%s")
OriginFileName=Original Dateiname
SetDemandReason=Quelle definieren
SetBankAccount=Bankkonto angeben
AccountCurrency=Kontowährung
ViewPrivateNote=Zeige Notizen
XMoreLines=%s Zeile(n) versteckt
PublicUrl=Öffentliche URL
AddBox=Add box
# Week day
Monday=Montag

View File

@ -47,7 +47,7 @@ DictionarySetup=Ρύθμισης λεξικού
Dictionary=Λεξικά
ErrorReservedTypeSystemSystemAuto=Αξία «system» και «systemauto» για τον τύπο είναι κατοχυρωμένα. Μπορείτε να χρησιμοποιήσετε το «χρήστη» ως αξία για να προσθέσετε το δικό σας μητρώο
ErrorCodeCantContainZero=Ο κώδικας δεν μπορεί να περιέχει την τιμή 0
DisableJavascript=Απενεργοποίηση συναρτήσεων JavaScript και Ajax
DisableJavascript=Απενεργοποίηση της Java ακολουθίας και των Ajax λειτουργιών (Προτείνεται για χρήση από άτομα με προβλήματα όρασης ή φυλλομετρητές κειμένου)
ConfirmAjax=Χρήση διαλόγων επιβεβαίωσης Ajax
UseSearchToSelectCompanyTooltip=Επίσης, αν έχετε ένα μεγάλο αριθμό Πελ./Προμ. (> 100 000), μπορείτε να αυξήσετε την ταχύτητα με τον καθορισμό της σταθερά COMPANY_DONOTSEARCH_ANYWHERE σε 1 στο Setup->Other. Η αναζήτηση στη συνέχεια θα περιορίζεται από την έναρξη της σειράς.
UseSearchToSelectCompany=Χρησιμοποιήστε τα πεδία αυτόματης συμπλήρωσης για να επιλέξετε Πελ./Προμ. αντί να χρησιμοποιεί ένα πλαίσιο λίστας.
@ -928,11 +928,14 @@ EventsSetup=Setup for events logs
LogEvents=Security audit events
Audit=Ιστορικό εισόδου χρηστών
InfoDolibarr=Infos Dolibarr
InfoBrowser=Φυλλομετρητής πληροφοριών
InfoOS=Infos OS
InfoWebServer=Infos web server
InfoDatabase=Infos database
InfoPHP=Infos PHP
InfoPerf=Πληροφορίες επιδόσεων
BrowserName=Όνομα φυλλομετρητή
BrowserOS=Λειτουργικό σύστημα φυλλομετρητή
ListEvents=Audit events
ListOfSecurityEvents=List of Dolibarr security events
SecurityEventsPurged=Συμβάντα ασφαλείας εξαγνίζονται
@ -1441,8 +1444,8 @@ ConfirmDeleteLine=Are you sure you want to delete this line ?
##### Tax #####
TaxSetup=Taxes, social contributions and dividends module setup
OptionVatMode=VAT due
OptionVATDefault=Standard
OptionVATDebitOption=Option services on Debit
OptionVATDefault=Βάσει μετρητών
OptionVATDebitOption=Βάσει δεδουλευμένων
OptionVatDefaultDesc=VAT is due:<br>- on delivery for goods (we use invoice date)<br>- on payments for services
OptionVatDebitOptionDesc=VAT is due:<br>- on delivery for goods (we use invoice date)<br>- on invoice (debit) for services
SummaryOfVatExigibilityUsedByDefault=Χρόνος της καταλληλότητας του ΦΠΑ εξ ορισμού ανάλογα την επιλογή:

View File

@ -252,22 +252,22 @@ CompanyHasNoRelativeDiscount=This customer has no relative discount by default
CompanyHasAbsoluteDiscount=This customer still has discount credits for <b>%s %s</b>
CompanyHasCreditNote=This customer still has credit notes or previous deposits for <b>%s %s</b>
CompanyHasNoAbsoluteDiscount=This customer has no discount credit available
CustomerAbsoluteDiscountAllUsers=Absolute discounts (granted by all users)
CustomerAbsoluteDiscountMy=Absolute discounts (granted by yourself)
CustomerAbsoluteDiscountAllUsers=Απόλυτες εκπτώσεις (Επικυρωμένες απ' όλους τους χρήστες)
CustomerAbsoluteDiscountMy=Απόλυτες εκπτώσεις (Επικυρωμένες από εσάς)
DefaultDiscount=Προκαθορισμένη έκπτωση
AvailableGlobalDiscounts=Διαθέση απόλυτη έκπτωση
AvailableGlobalDiscounts=Απόλυτες εκπτώσεις διαθέσιμες
DiscountNone=Καμία
Supplier=Προμηθευτής
CompanyList=Λίστα εταιριών
AddContact=Προσθήκη αντιπρ./διεύθ.
AddContact=Προσθήκη επαφής
AddContactAddress=Προσθήκη επαφής/διεύθυνσης
EditContact=Επεξεργασία επαφής / διεύθυνση
EditContact=Επεξεργασία επαφής
EditContactAddress=Επεξεργασία επαφής/διεύθυνσης
Contact=Αντιπρόσωπος
ContactsAddresses=Αντιπρόσωποι/Διευθύνσεις
NoContactDefinedForThirdParty=Αριθ. επαφής που ορίζονται γι 'αυτό τον Πελ./Προμ.
NoContactDefined=Κανένας αντιπρόσωπος δεν καθορίστηκε για αυτό το στοιχείο
DefaultContact=Προκαθορισμένος αντιπρόσωπος
Contact=Υπεύθυνος επικοινωνίας
ContactsAddresses=Επαφές/Διευθύνσεις
NoContactDefinedForThirdParty=Δεν έχει ορισθεί πρόσωπο επικοινωνίας για αυτόν τον Πελ/Προμ
NoContactDefined=Δεν έχει ορισθεί πρόσωπο επικοινωνίας
DefaultContact=Προκαθορισμένος εκπρόσωπος/διεύθυνση
AddCompany=Προσθήκη εταιρίας
AddThirdParty=Προσθήκη Πελ./Προμ.
DeleteACompany=Διαγραφή εταιρίας

View File

@ -124,11 +124,11 @@ CalcModeVATEngagement=Κατάσταση <b>%sΦΠΑ επί των εσόδων-
CalcModeDebt=Κατάσταση <b>%sΑπαιτήσεις-Οφειλές%s</b> δήλωσε <b>Λογιστικών υποχρεώσεων</b>.
CalcModeEngagement=Κατάσταση <b>%sεσόδων-έξοδα%s</b> δήλωσε <b>ταμειακή λογιστική</b>
CalcModeLT1= Λειτουργία <b>%sRE στα τιμολόγια πελατών - τιμολόγια προμηθευτών%s</b>
CalcModeLT1Debt=Λειτουργία <b>%sRE στα τιμολόγια των πελατών%s</b>
CalcModeLT1Rec= Λειτουργία <b>%sRE στα τιμολόγια των προμηθευτών%s</b>
CalcModeLT2= Λειτουργία <b>%sIRPF στα τιμολόγια πελατών - τιμολόγια προμηθευτών%s</b>
CalcModeLT2Debt=Λειτουργία <b>%sIRPF στα τιμολόγια των πελατών%s</b>
CalcModeLT2Rec= Λειτουργία <b>%sIRPF στα τιμολόγια των προμηθευτών%s</b>
CalcModeLT1Debt=Λειτουργία <b>%sRE στα τιμολόγια των πελατών%s</b> (Αφορά φορολογικούς συντελεστές του Ισπανικού κράτους)
CalcModeLT1Rec= Λειτουργία <b>%sRE στα τιμολόγια των προμηθευτών%s</b> (Αφορά φορολογικούς συντελεστές του Ισπανικού κράτους)
CalcModeLT2= Λειτουργία <b>%sIRPF στα τιμολόγια πελατών - τιμολόγια προμηθευτών%s</b> (Αφορά φορολογικούς συντελεστές του Ισπανικού κράτους)
CalcModeLT2Debt=Λειτουργία <b>%sIRPF στα τιμολόγια των πελατών%s</b> (Αφορά φορολογικούς συντελεστές του Ισπανικού κράτους)
CalcModeLT2Rec= Λειτουργία <b>%sIRPF στα τιμολόγια των προμηθευτών%s</b> (Αφορά φορολογικούς συντελεστές του Ισπανικού κράτους)
AnnualSummaryDueDebtMode=Υπόλοιπο των εσόδων και εξόδων, ετήσια σύνοψη
AnnualSummaryInputOutputMode=Υπόλοιπο των εσόδων και εξόδων, ετήσια σύνοψη
AnnualByCompaniesDueDebtMode=Balance of income and expenses, detail by third parties, mode <b>%sClaims-Debts%s</b> said <b>Commitment accounting</b>.

View File

@ -153,3 +153,4 @@ WarningCloseAlways=Warning, closing is done even if amount differs between sourc
WarningUsingThisBoxSlowDown=Warning, using this box slow down seriously all pages showing the box.
WarningClickToDialUserSetupNotComplete=Setup of ClickToDial information for your user are not complete (see tab ClickToDial onto your user card).
WarningNotRelevant=Irrelevant operation for this dataset
WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Απενεργοποιημένη λειτουργία όταν οι ρυθμίσεις της οθόνης έχουν προσαρμοστεί για χρήση από άτομα με προβλήματα όρασης ή φυλλομετρητές κειμένου.

View File

@ -672,9 +672,12 @@ HelpCopyToClipboard=Χρησιμοποιήστε το Ctrl + C για να αν
SaveUploadedFileWithMask=Αποθηκεύστε το αρχείο στον server με το όνομα "<strong>%s</strong>" (αλλιώς "%s")
OriginFileName=Αρχική Ονομασία
SetDemandReason=Ρυθμίστε την πηγή
SetBankAccount=Προσδιορίστε Τραπεζικό λογαριασμό
AccountCurrency=Νόμισμα Λογαριασμού
ViewPrivateNote=Προβολή σημειώσεων
XMoreLines=%s γραμμή (ές) κρυμμένη
PublicUrl=Δημόσια URL
AddBox=Προσθήκη πεδίου
# Week day
Monday=Δευτέρα

View File

@ -62,7 +62,7 @@ LastProspectContactDone=Contact done
DateActionPlanned=Date event planned for
DateActionDone=Date event done
ActionAskedBy=Event reported by
ActionAffectedTo=Event assigned to
ActionAffectedTo=Event owned by
ActionDoneBy=Event done by
ActionUserAsk=Reported by
ErrorStatusCantBeZeroIfStarted=If field '<b>Date done</b>' is filled, action is started (or finished), so field '<b>Status</b>' can't be 0%%.

Some files were not shown because too many files have changed in this diff Show More