Add: début ajout gestion des éco-taxes (DEEE)
This commit is contained in:
parent
30b99b7df8
commit
83f394866c
@ -50,7 +50,7 @@ $active = 1;
|
|||||||
// Mettre ici tous les caractéristiques des dictionnaires
|
// Mettre ici tous les caractéristiques des dictionnaires
|
||||||
|
|
||||||
// Ordres d'affichage des dictionnaires (0 pour espace)
|
// Ordres d'affichage des dictionnaires (0 pour espace)
|
||||||
$taborder=array(9,0,4,3,2,0,1,8,0,5,11,0,6,0,10,12,13,0,7);
|
$taborder=array(9,0,4,3,2,0,1,8,0,5,11,0,6,0,10,12,13,0,14,0,7);
|
||||||
|
|
||||||
// Nom des tables des dictionnaires
|
// Nom des tables des dictionnaires
|
||||||
$tabname[1] = MAIN_DB_PREFIX."c_forme_juridique";
|
$tabname[1] = MAIN_DB_PREFIX."c_forme_juridique";
|
||||||
@ -66,6 +66,7 @@ $tabname[10]= MAIN_DB_PREFIX."c_tva";
|
|||||||
$tabname[11]= MAIN_DB_PREFIX."c_type_contact";
|
$tabname[11]= MAIN_DB_PREFIX."c_type_contact";
|
||||||
$tabname[12]= MAIN_DB_PREFIX."cond_reglement";
|
$tabname[12]= MAIN_DB_PREFIX."cond_reglement";
|
||||||
$tabname[13]= MAIN_DB_PREFIX."c_paiement";
|
$tabname[13]= MAIN_DB_PREFIX."c_paiement";
|
||||||
|
$tabname[14]= MAIN_DB_PREFIX."c_ecotaxe";
|
||||||
|
|
||||||
// Libellé des dictionnaires
|
// Libellé des dictionnaires
|
||||||
$tablib[1] = $langs->trans("DictionnaryCompanyJuridicalType");
|
$tablib[1] = $langs->trans("DictionnaryCompanyJuridicalType");
|
||||||
@ -81,6 +82,7 @@ $tablib[10]= $langs->trans("DictionnaryVAT");
|
|||||||
$tablib[11]= $langs->trans("DictionnaryTypeContact");
|
$tablib[11]= $langs->trans("DictionnaryTypeContact");
|
||||||
$tablib[12]= $langs->trans("DictionnaryPaymentConditions");
|
$tablib[12]= $langs->trans("DictionnaryPaymentConditions");
|
||||||
$tablib[13]= $langs->trans("DictionnaryPaymentModes");
|
$tablib[13]= $langs->trans("DictionnaryPaymentModes");
|
||||||
|
$tablib[14]= $langs->trans("DictionnaryEcotaxe");
|
||||||
|
|
||||||
// Requete pour extraction des données des dictionnaires
|
// Requete pour extraction des données des dictionnaires
|
||||||
$tabsql[1] = "SELECT f.rowid as rowid, f.code, f.libelle, p.libelle as pays, f.active FROM ".MAIN_DB_PREFIX."c_forme_juridique as f, ".MAIN_DB_PREFIX."c_pays as p WHERE f.fk_pays=p.rowid";
|
$tabsql[1] = "SELECT f.rowid as rowid, f.code, f.libelle, p.libelle as pays, f.active FROM ".MAIN_DB_PREFIX."c_forme_juridique as f, ".MAIN_DB_PREFIX."c_pays as p WHERE f.fk_pays=p.rowid";
|
||||||
@ -94,8 +96,9 @@ $tabsql[8] = "SELECT id as rowid, code, libelle, active FROM ".MAIN_DB_PREF
|
|||||||
$tabsql[9] = "SELECT code, code_iso, label as libelle, active FROM ".MAIN_DB_PREFIX."c_currencies";
|
$tabsql[9] = "SELECT code, code_iso, label as libelle, active FROM ".MAIN_DB_PREFIX."c_currencies";
|
||||||
$tabsql[10]= "SELECT t.rowid, t.taux, p.libelle as pays, t.recuperableonly, t.note, t.active FROM ".MAIN_DB_PREFIX."c_tva as t, llx_c_pays as p WHERE t.fk_pays=p.rowid";
|
$tabsql[10]= "SELECT t.rowid, t.taux, p.libelle as pays, t.recuperableonly, t.note, t.active FROM ".MAIN_DB_PREFIX."c_tva as t, llx_c_pays as p WHERE t.fk_pays=p.rowid";
|
||||||
$tabsql[11]= "SELECT t.rowid as rowid, element, source, code, libelle, active FROM ".MAIN_DB_PREFIX."c_type_contact AS t";
|
$tabsql[11]= "SELECT t.rowid as rowid, element, source, code, libelle, active FROM ".MAIN_DB_PREFIX."c_type_contact AS t";
|
||||||
$tabsql[12]= "SELECT rowid as rowid, code, sortorder, c.libelle, c.libelle_facture, nbjour, fdm, decalage, active FROM ".MAIN_DB_PREFIX."cond_reglement AS c";
|
$tabsql[12]= "SELECT c.rowid as rowid, code, sortorder, c.libelle, c.libelle_facture, nbjour, fdm, decalage, active FROM ".MAIN_DB_PREFIX."cond_reglement AS c";
|
||||||
$tabsql[13]= "SELECT id as rowid, code, c.libelle, type, active FROM ".MAIN_DB_PREFIX."c_paiement AS c";
|
$tabsql[13]= "SELECT id as rowid, code, c.libelle, type, active FROM ".MAIN_DB_PREFIX."c_paiement AS c";
|
||||||
|
$tabsql[14]= "SELECT e.rowid as rowid, e.code as code, e.libelle, e.price, e.organization, e.fk_pays as pays_id, p.libelle as pays, e.active FROM ".MAIN_DB_PREFIX."c_ecotaxe AS e, ".MAIN_DB_PREFIX."c_pays as p WHERE e.fk_pays=p.rowid and p.active=1";
|
||||||
|
|
||||||
// Critere de tri du dictionnaire
|
// Critere de tri du dictionnaire
|
||||||
$tabsqlsort[1] ="pays, code ASC";
|
$tabsqlsort[1] ="pays, code ASC";
|
||||||
@ -111,6 +114,7 @@ $tabsqlsort[10]="pays ASC, taux ASC, recuperableonly ASC";
|
|||||||
$tabsqlsort[11]="element ASC, source ASC, code ASC";
|
$tabsqlsort[11]="element ASC, source ASC, code ASC";
|
||||||
$tabsqlsort[12]="sortorder ASC, code ASC";
|
$tabsqlsort[12]="sortorder ASC, code ASC";
|
||||||
$tabsqlsort[13]="code ASC";
|
$tabsqlsort[13]="code ASC";
|
||||||
|
$tabsqlsort[14]="pays, e.organization ASC, code ASC";
|
||||||
|
|
||||||
// Nom des champs en resultat de select pour affichage du dictionnaire
|
// Nom des champs en resultat de select pour affichage du dictionnaire
|
||||||
$tabfield[1] = "code,libelle,pays";
|
$tabfield[1] = "code,libelle,pays";
|
||||||
@ -126,6 +130,7 @@ $tabfield[10]= "pays,taux,recuperableonly,note";
|
|||||||
$tabfield[11]= "element,source,code,libelle";
|
$tabfield[11]= "element,source,code,libelle";
|
||||||
$tabfield[12]= "code,libelle,libelle_facture,nbjour,fdm,decalage";
|
$tabfield[12]= "code,libelle,libelle_facture,nbjour,fdm,decalage";
|
||||||
$tabfield[13]= "code,libelle,type";
|
$tabfield[13]= "code,libelle,type";
|
||||||
|
$tabfield[14]= "code,libelle,price,organization,pays_id,pays";
|
||||||
|
|
||||||
// Nom des champs d'édition pour modification du dictionnaire
|
// Nom des champs d'édition pour modification du dictionnaire
|
||||||
$tabfieldvalue[1] = "code,libelle,pays";
|
$tabfieldvalue[1] = "code,libelle,pays";
|
||||||
@ -141,6 +146,7 @@ $tabfieldvalue[10]= "pays,taux,recuperableonly,note";
|
|||||||
$tabfieldvalue[11]= "element,source,code,libelle";
|
$tabfieldvalue[11]= "element,source,code,libelle";
|
||||||
$tabfieldvalue[12]= "code,libelle,libelle_facture,nbjour,fdm,decalage";
|
$tabfieldvalue[12]= "code,libelle,libelle_facture,nbjour,fdm,decalage";
|
||||||
$tabfieldvalue[13]= "code,libelle,type";
|
$tabfieldvalue[13]= "code,libelle,type";
|
||||||
|
$tabfieldvalue[14]= "code,libelle,price,organization,pays";
|
||||||
|
|
||||||
// Nom des champs dans la table pour insertion d'un enregistrement
|
// Nom des champs dans la table pour insertion d'un enregistrement
|
||||||
$tabfieldinsert[1] = "code,libelle,fk_pays";
|
$tabfieldinsert[1] = "code,libelle,fk_pays";
|
||||||
@ -156,6 +162,7 @@ $tabfieldinsert[10]= "fk_pays,taux,recuperableonly,note";
|
|||||||
$tabfieldinsert[11]= "element,source,code,libelle";
|
$tabfieldinsert[11]= "element,source,code,libelle";
|
||||||
$tabfieldinsert[12]= "code,libelle,libelle_facture,nbjour,fdm,decalage";
|
$tabfieldinsert[12]= "code,libelle,libelle_facture,nbjour,fdm,decalage";
|
||||||
$tabfieldinsert[13]= "code,libelle,type";
|
$tabfieldinsert[13]= "code,libelle,type";
|
||||||
|
$tabfieldinsert[14]= "code,libelle,price,organization,fk_pays";
|
||||||
|
|
||||||
// Nom du rowid si le champ n'est pas de type autoincrément
|
// Nom du rowid si le champ n'est pas de type autoincrément
|
||||||
$tabrowid[1] = "";
|
$tabrowid[1] = "";
|
||||||
@ -171,6 +178,7 @@ $tabrowid[10]= "";
|
|||||||
$tabrowid[11]= "rowid";
|
$tabrowid[11]= "rowid";
|
||||||
$tabrowid[12]= "rowid";
|
$tabrowid[12]= "rowid";
|
||||||
$tabrowid[13]= "id";
|
$tabrowid[13]= "id";
|
||||||
|
$tabrowid[14]= "";
|
||||||
|
|
||||||
// Condition to show dictionnary in setup page
|
// Condition to show dictionnary in setup page
|
||||||
$tabcond[1] = $conf->societe->enabled;
|
$tabcond[1] = $conf->societe->enabled;
|
||||||
@ -186,6 +194,7 @@ $tabcond[10]= true;
|
|||||||
$tabcond[11]= true;
|
$tabcond[11]= true;
|
||||||
$tabcond[12]= $conf->facture->enabled||$conf->fournisseur->enabled;
|
$tabcond[12]= $conf->facture->enabled||$conf->fournisseur->enabled;
|
||||||
$tabcond[13]= $conf->facture->enabled||$conf->fournisseur->enabled;
|
$tabcond[13]= $conf->facture->enabled||$conf->fournisseur->enabled;
|
||||||
|
$tabcond[14]= $conf->produit->enabled&&$conf->global->PRODUIT_USE_ECOTAXE;
|
||||||
|
|
||||||
$msg='';
|
$msg='';
|
||||||
|
|
||||||
@ -198,6 +207,8 @@ $sortfield=$_GET["sortfield"];
|
|||||||
if ($_POST["actionadd"] || $_POST["actionmodify"])
|
if ($_POST["actionadd"] || $_POST["actionmodify"])
|
||||||
{
|
{
|
||||||
$listfield=split(',',$tabfield[$_POST["id"]]);
|
$listfield=split(',',$tabfield[$_POST["id"]]);
|
||||||
|
$listfieldmodify=split(',',$tabfieldinsert[$_POST["id"]]);
|
||||||
|
$listfieldvalue=split(',',$tabfieldvalue[$_POST["id"]]);
|
||||||
|
|
||||||
// Verifie que tous les champs sont renseignés
|
// Verifie que tous les champs sont renseignés
|
||||||
$ok=1;
|
$ok=1;
|
||||||
@ -244,14 +255,15 @@ if ($_POST["actionadd"] || $_POST["actionmodify"])
|
|||||||
if ($tabrowid[$_POST["id"]] &&
|
if ($tabrowid[$_POST["id"]] &&
|
||||||
! in_array($tabrowid[$_POST["id"]],$listfield)) $sql.= $newid.",";
|
! in_array($tabrowid[$_POST["id"]],$listfield)) $sql.= $newid.",";
|
||||||
$i=0;
|
$i=0;
|
||||||
foreach ($listfield as $f => $value) {
|
foreach ($listfieldmodify as $f => $value) {
|
||||||
if ($i) $sql.=",";
|
if ($value == 'price') { $_POST[$listfieldvalue[$i]] = price2num($_POST[$listfieldvalue[$i]],'MU'); }
|
||||||
$sql.="'".addslashes($_POST[$value])."'";
|
if ($i) $sql.=",";
|
||||||
$i++;
|
$sql.="'".addslashes($_POST[$listfieldvalue[$i]])."'";
|
||||||
|
$i++;
|
||||||
}
|
}
|
||||||
$sql.=",1)";
|
$sql.=",1)";
|
||||||
|
|
||||||
dolibarr_syslog("dict actionadd sql=".$sql);
|
dolibarr_syslog("dict actionadd sql=".$sql);
|
||||||
$result = $db->query($sql);
|
$result = $db->query($sql);
|
||||||
if (!$result)
|
if (!$result)
|
||||||
{
|
{
|
||||||
@ -269,10 +281,6 @@ if ($_POST["actionadd"] || $_POST["actionmodify"])
|
|||||||
if ($tabrowid[$_POST["id"]]) { $rowidcol=$tabrowid[$_POST["id"]]; }
|
if ($tabrowid[$_POST["id"]]) { $rowidcol=$tabrowid[$_POST["id"]]; }
|
||||||
else { $rowidcol="rowid"; }
|
else { $rowidcol="rowid"; }
|
||||||
|
|
||||||
// on utilise les champs d'insertion pour effectuer la modification
|
|
||||||
$listfieldmodify=split(',',$tabfieldinsert[$_POST["id"]]);
|
|
||||||
$listfieldvalue=split(',',$tabfieldvalue[$_POST["id"]]);
|
|
||||||
|
|
||||||
// Modify entry
|
// Modify entry
|
||||||
$sql = "UPDATE ".$tabname[$_POST["id"]]." SET ";
|
$sql = "UPDATE ".$tabname[$_POST["id"]]." SET ";
|
||||||
// Modifie valeur des champs
|
// Modifie valeur des champs
|
||||||
@ -282,16 +290,10 @@ if ($_POST["actionadd"] || $_POST["actionmodify"])
|
|||||||
$sql.= "'".addslashes($_POST["rowid"])."', ";
|
$sql.= "'".addslashes($_POST["rowid"])."', ";
|
||||||
}
|
}
|
||||||
$i = 0;
|
$i = 0;
|
||||||
|
|
||||||
foreach ($listfieldmodify as $field) {
|
foreach ($listfieldmodify as $field) {
|
||||||
if ($i > 0)
|
if ($i) $sql.=",";
|
||||||
{
|
|
||||||
$sql.= ", ";
|
|
||||||
}
|
|
||||||
|
|
||||||
$sql.= $field."=";
|
$sql.= $field."=";
|
||||||
$sql.= "'".addslashes($_POST[$listfieldvalue[$i]])."'";
|
$sql.= "'".addslashes($_POST[$listfieldvalue[$i]])."'";
|
||||||
|
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
$sql.= " WHERE ".$rowidcol." = '".$_POST["rowid"]."'";
|
$sql.= " WHERE ".$rowidcol." = '".$_POST["rowid"]."'";
|
||||||
@ -435,18 +437,20 @@ if ($_GET["id"])
|
|||||||
// Determine le nom du champ par rapport aux noms possibles
|
// Determine le nom du champ par rapport aux noms possibles
|
||||||
// dans les dictionnaires de données
|
// dans les dictionnaires de données
|
||||||
$valuetoshow=ucfirst($fieldlist[$field]); // Par defaut
|
$valuetoshow=ucfirst($fieldlist[$field]); // Par defaut
|
||||||
if ($fieldlist[$field]=='source') $valuetoshow=$langs->trans("Contact");
|
if ($fieldlist[$field]=='source') { $valuetoshow=$langs->trans("Contact"); }
|
||||||
if ($fieldlist[$field]=='lang') $valuetoshow=$langs->trans("Language");
|
if ($fieldlist[$field]=='price') { $valuetoshow=$langs->trans("PriceUHT"); }
|
||||||
if ($fieldlist[$field]=='type') $valuetoshow=$langs->trans("Type");
|
if ($fieldlist[$field]=='organization') { $valuetoshow=$langs->trans("Organization"); }
|
||||||
if ($fieldlist[$field]=='code') $valuetoshow=$langs->trans("Code");
|
if ($fieldlist[$field]=='lang') { $valuetoshow=$langs->trans("Language"); }
|
||||||
if ($fieldlist[$field]=='libelle' || $fieldlist[$field]=='label') $valuetoshow=$langs->trans("Label")."*";
|
if ($fieldlist[$field]=='type') { $valuetoshow=$langs->trans("Type"); }
|
||||||
if ($fieldlist[$field]=='libelle_facture') $valuetoshow=$langs->trans("LabelOnDocuments")."*";
|
if ($fieldlist[$field]=='code') { $valuetoshow=$langs->trans("Code"); }
|
||||||
if ($fieldlist[$field]=='pays') $valuetoshow=$langs->trans("Country");
|
if ($fieldlist[$field]=='libelle' || $fieldlist[$field]=='label') { $valuetoshow=$langs->trans("Label")."*"; }
|
||||||
if ($fieldlist[$field]=='recuperableonly') $valuetoshow=MENTION_NPR;
|
if ($fieldlist[$field]=='libelle_facture') { $valuetoshow=$langs->trans("LabelOnDocuments")."*"; }
|
||||||
if ($fieldlist[$field]=='nbjour') $valuetoshow=$langs->trans("NbOfDays");
|
if ($fieldlist[$field]=='pays') { $valuetoshow=$langs->trans("Country"); }
|
||||||
if ($fieldlist[$field]=='fdm') $valuetoshow=$langs->trans("AtEndOfMonth");
|
if ($fieldlist[$field]=='recuperableonly') { $valuetoshow=MENTION_NPR; }
|
||||||
if ($fieldlist[$field]=='decalage') $valuetoshow=$langs->trans("Offset");
|
if ($fieldlist[$field]=='nbjour') { $valuetoshow=$langs->trans("NbOfDays"); }
|
||||||
if ($fieldlist[$field]=='region_id' || $fieldlist[$field]=='pays_id') $valuetoshow='';
|
if ($fieldlist[$field]=='fdm') { $valuetoshow=$langs->trans("AtEndOfMonth"); }
|
||||||
|
if ($fieldlist[$field]=='decalage') { $valuetoshow=$langs->trans("Offset"); }
|
||||||
|
if ($fieldlist[$field]=='region_id' || $fieldlist[$field]=='pays_id') { $valuetoshow=''; }
|
||||||
|
|
||||||
if ($valuetoshow != '')
|
if ($valuetoshow != '')
|
||||||
{
|
{
|
||||||
@ -493,6 +497,8 @@ if ($_GET["id"])
|
|||||||
$showfield=1; // Par defaut
|
$showfield=1; // Par defaut
|
||||||
$valuetoshow=ucfirst($fieldlist[$field]); // Par defaut
|
$valuetoshow=ucfirst($fieldlist[$field]); // Par defaut
|
||||||
if ($fieldlist[$field]=='source') { $valuetoshow=$langs->trans("Contact"); }
|
if ($fieldlist[$field]=='source') { $valuetoshow=$langs->trans("Contact"); }
|
||||||
|
if ($fieldlist[$field]=='price') { $valuetoshow=$langs->trans("PriceUHT"); }
|
||||||
|
if ($fieldlist[$field]=='organization') { $valuetoshow=$langs->trans("Organization"); }
|
||||||
if ($fieldlist[$field]=='lang') { $valuetoshow=$langs->trans("Language"); }
|
if ($fieldlist[$field]=='lang') { $valuetoshow=$langs->trans("Language"); }
|
||||||
if ($fieldlist[$field]=='type') { $valuetoshow=$langs->trans("Type"); }
|
if ($fieldlist[$field]=='type') { $valuetoshow=$langs->trans("Type"); }
|
||||||
if ($fieldlist[$field]=='code') { $valuetoshow=$langs->trans("Code"); }
|
if ($fieldlist[$field]=='code') { $valuetoshow=$langs->trans("Code"); }
|
||||||
@ -533,24 +539,24 @@ if ($_GET["id"])
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
foreach ($fieldlist as $field => $value)
|
foreach ($fieldlist as $field => $value)
|
||||||
{
|
{
|
||||||
$showfield=1;
|
$showfield=1;
|
||||||
$valuetoshow=$obj->$fieldlist[$field];
|
$valuetoshow=$obj->$fieldlist[$field];
|
||||||
|
|
||||||
if ($valuetoshow=='all') {
|
if ($valuetoshow=='all') {
|
||||||
$valuetoshow=$langs->trans('All');
|
$valuetoshow=$langs->trans('All');
|
||||||
}
|
}
|
||||||
if ($fieldlist[$field]=='recuperableonly') {
|
if ($fieldlist[$field]=='recuperableonly' || $fieldlist[$field]=='fdm') {
|
||||||
$valuetoshow=yn($valuetoshow);
|
$valuetoshow=yn($valuetoshow);
|
||||||
}
|
}
|
||||||
if ($fieldlist[$field]=='fdm') {
|
if ($fieldlist[$field]=='price') {
|
||||||
$valuetoshow=yn($valuetoshow);
|
$valuetoshow=price($valuetoshow);
|
||||||
}
|
}
|
||||||
if ($fieldlist[$field]=='region_id' || $fieldlist[$field]=='pays_id') {
|
if ($fieldlist[$field]=='region_id' || $fieldlist[$field]=='pays_id') {
|
||||||
$showfield=0;
|
$showfield=0;
|
||||||
}
|
}
|
||||||
if ($showfield) print '<td>'.$valuetoshow.'</td>';
|
if ($showfield) print '<td>'.$valuetoshow.'</td>';
|
||||||
}
|
}
|
||||||
|
|
||||||
print '<td align="center">';
|
print '<td align="center">';
|
||||||
// Est-ce une entrée du dictionnaire qui peut etre désactivée ?
|
// Est-ce une entrée du dictionnaire qui peut etre désactivée ?
|
||||||
@ -642,8 +648,8 @@ function fieldList($fieldlist,$obj='')
|
|||||||
print '</td>';
|
print '</td>';
|
||||||
}
|
}
|
||||||
elseif ($fieldlist[$field] == 'pays_id') {
|
elseif ($fieldlist[$field] == 'pays_id') {
|
||||||
$pays_id = $obj->$fieldlist[$field];
|
$pays_id = $obj->$fieldlist[$field]?$obj->$fieldlist[$field]:0;
|
||||||
print '<input type="hidden" name="'.$fieldlist[$field].'" value="'.$obj->$fieldlist[$field].'">';
|
print '<input type="hidden" name="'.$fieldlist[$field].'" value="'.$pays_id.'">';
|
||||||
}
|
}
|
||||||
elseif ($fieldlist[$field] == 'region') {
|
elseif ($fieldlist[$field] == 'region') {
|
||||||
print '<td>';
|
print '<td>';
|
||||||
@ -651,8 +657,8 @@ function fieldList($fieldlist,$obj='')
|
|||||||
print '</td>';
|
print '</td>';
|
||||||
}
|
}
|
||||||
elseif ($fieldlist[$field] == 'region_id') {
|
elseif ($fieldlist[$field] == 'region_id') {
|
||||||
$region_id = $obj->$fieldlist[$field];
|
$region_id = $obj->$fieldlist[$field]?$obj->$fieldlist[$field]:0;
|
||||||
print '<input type="hidden" name="'.$fieldlist[$field].'" value="'.$obj->$fieldlist[$field].'">';
|
print '<input type="hidden" name="'.$fieldlist[$field].'" value="'.$region_id.'">';
|
||||||
}
|
}
|
||||||
elseif ($fieldlist[$field] == 'lang') {
|
elseif ($fieldlist[$field] == 'lang') {
|
||||||
print '<td>';
|
print '<td>';
|
||||||
@ -699,6 +705,9 @@ function fieldList($fieldlist,$obj='')
|
|||||||
elseif ($fieldlist[$field] == 'nbjour' || $fieldlist[$field] == 'decalage' || $fieldlist[$field] == 'taux') {
|
elseif ($fieldlist[$field] == 'nbjour' || $fieldlist[$field] == 'decalage' || $fieldlist[$field] == 'taux') {
|
||||||
print '<td><input type="text" class="flat" value="'.$obj->$fieldlist[$field].'" size="3" name="'.$fieldlist[$field].'"></td>';
|
print '<td><input type="text" class="flat" value="'.$obj->$fieldlist[$field].'" size="3" name="'.$fieldlist[$field].'"></td>';
|
||||||
}
|
}
|
||||||
|
elseif ($fieldlist[$field] == 'price') {
|
||||||
|
print '<td><input type="text" class="flat" value="'.price($obj->$fieldlist[$field]).'" size="10" name="'.$fieldlist[$field].'"></td>';
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
print '<td><input type="text" class="flat" value="'.$obj->$fieldlist[$field].'" name="'.$fieldlist[$field].'" ></td>';
|
print '<td><input type="text" class="flat" value="'.$obj->$fieldlist[$field].'" name="'.$fieldlist[$field].'" ></td>';
|
||||||
|
|||||||
@ -144,6 +144,12 @@ else if ($_GET["action"] == 'set')
|
|||||||
Header("Location: produit.php");
|
Header("Location: produit.php");
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
else if ($_POST["action"] == 'useecotaxe')
|
||||||
|
{
|
||||||
|
dolibarr_set_const($db, "PRODUIT_USE_ECOTAXE", $_POST["activate_useecotaxe"]);
|
||||||
|
Header("Location: produit.php");
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -275,6 +281,20 @@ if ($conf->global->PRODUIT_CHANGE_PROD_DESC == 0)
|
|||||||
print '</form>';
|
print '</form>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Utilisation de l'écotaxe
|
||||||
|
$var=!$var;
|
||||||
|
print "<form method=\"post\" action=\"produit.php\">";
|
||||||
|
print "<input type=\"hidden\" name=\"action\" value=\"useecotaxe\">";
|
||||||
|
print "<tr ".$bc[$var].">";
|
||||||
|
print '<td width="80%">'.$langs->trans("UseEcoTaxeAbility").'</td>';
|
||||||
|
print '<td width="60" align="right">';
|
||||||
|
print $html->selectyesno("activate_useecotaxe",$conf->global->PRODUIT_USE_ECOTAXE,1);
|
||||||
|
print '</td><td align="right">';
|
||||||
|
print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
|
||||||
|
print "</td>";
|
||||||
|
print '</tr>';
|
||||||
|
print '</form>';
|
||||||
|
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print " <td>".$langs->trans("ProductSpecial")."</td>\n";
|
print " <td>".$langs->trans("ProductSpecial")."</td>\n";
|
||||||
print " <td align=\"right\" width=\"60\">".$langs->trans("Value")."</td>\n";
|
print " <td align=\"right\" width=\"60\">".$langs->trans("Value")."</td>\n";
|
||||||
|
|||||||
@ -20,7 +20,6 @@ ErrorDecimalLargerThanAreForbidden=Error, precision higher than <b>%s</b> are no
|
|||||||
DictionnarySetup=Dictionnary setup
|
DictionnarySetup=Dictionnary setup
|
||||||
DisableJavascript=Disable JavaScript functions
|
DisableJavascript=Disable JavaScript functions
|
||||||
DisableAjax=Disable AJAX functions
|
DisableAjax=Disable AJAX functions
|
||||||
UseSearchToSelectProduct=Use a search form to choose a product (intead of using a list box)
|
|
||||||
UseSearchToSelectProduct=Use a search form to choose a company (intead of using a list box)
|
UseSearchToSelectProduct=Use a search form to choose a company (intead of using a list box)
|
||||||
NotAvailableWhenAjaxDisabled=Not available when Ajax disabled
|
NotAvailableWhenAjaxDisabled=Not available when Ajax disabled
|
||||||
JavascriptDisabled=JavaScript disabled
|
JavascriptDisabled=JavaScript disabled
|
||||||
@ -349,6 +348,7 @@ DictionnaryVAT=VAT Rates
|
|||||||
DictionnaryPaymentConditions=Payments conditions
|
DictionnaryPaymentConditions=Payments conditions
|
||||||
DictionnaryPaymentModes=Payments modes
|
DictionnaryPaymentModes=Payments modes
|
||||||
DictionnaryTypeContact=Contacts types
|
DictionnaryTypeContact=Contacts types
|
||||||
|
DictionnaryEcotaxe=Ecotaxe (WEEE)
|
||||||
VATReceivedOnly=Special rate not billed
|
VATReceivedOnly=Special rate not billed
|
||||||
VATManagement=VAT Management
|
VATManagement=VAT Management
|
||||||
VATIsUsedDesc=Le taux de TVA proposé par défaut lors de la création de propale, facture, commande, etc répond à la règle standard en vigueur:<br>Si vendeur non assujeti à TVA, TVA par défaut=0. Fin de règle.<br>Si le (pays vendeur = pays acheteur) alors la TVA par défaut=TVA du produit dans le pays du vendeur. Fin de règle.<br>Si vendeur et acheteur dans Communauté européenne et bien vendu = moyen de transports neuf (auto, bateau, avion), TVA par défaut=0 (La TVA doit être payé par l'acheteur au centre d'impots de son pays et non au vendeur). Fin de règle.<br>Si vendeur et acheteur dans Communauté européenne et bien vendu autre que transport neuf alors la TVA par défaut=TVA du produit vendu. Fin de règle.<br>Sinon la TVA proposée par défaut=0. Fin de règle.
|
VATIsUsedDesc=Le taux de TVA proposé par défaut lors de la création de propale, facture, commande, etc répond à la règle standard en vigueur:<br>Si vendeur non assujeti à TVA, TVA par défaut=0. Fin de règle.<br>Si le (pays vendeur = pays acheteur) alors la TVA par défaut=TVA du produit dans le pays du vendeur. Fin de règle.<br>Si vendeur et acheteur dans Communauté européenne et bien vendu = moyen de transports neuf (auto, bateau, avion), TVA par défaut=0 (La TVA doit être payé par l'acheteur au centre d'impots de son pays et non au vendeur). Fin de règle.<br>Si vendeur et acheteur dans Communauté européenne et bien vendu autre que transport neuf alors la TVA par défaut=TVA du produit vendu. Fin de règle.<br>Sinon la TVA proposée par défaut=0. Fin de règle.
|
||||||
@ -680,6 +680,8 @@ NumberOfProductShowInSelect=Max number of products in combos select lists (0=no
|
|||||||
ConfirmDeleteProductLineAbility=Confirmation of removal of a line produces in the forms
|
ConfirmDeleteProductLineAbility=Confirmation of removal of a line produces in the forms
|
||||||
ModifyProductDescAbility=Personalization of descriptions produced in the forms
|
ModifyProductDescAbility=Personalization of descriptions produced in the forms
|
||||||
ViewProductDescInFormAbility=Visualization of descriptions produced in the forms
|
ViewProductDescInFormAbility=Visualization of descriptions produced in the forms
|
||||||
|
UseSearchToSelectProduct=Use a search form to choose a product (intead of using a list box)
|
||||||
|
UseEcoTaxeAbility=Support Eco-Taxe (WEEE)
|
||||||
##### Syslog #####
|
##### Syslog #####
|
||||||
SyslogSetup=Syslog module setup
|
SyslogSetup=Syslog module setup
|
||||||
SyslogOutput=Log output
|
SyslogOutput=Log output
|
||||||
|
|||||||
@ -221,4 +221,5 @@ DeleteFile=Delete file
|
|||||||
ConfirmDeleteFile=Are you sure you want to delete this file?
|
ConfirmDeleteFile=Are you sure you want to delete this file?
|
||||||
AllocateCommercial=Allocate a commercial
|
AllocateCommercial=Allocate a commercial
|
||||||
SelectCountry=Select a country
|
SelectCountry=Select a country
|
||||||
SelectCompany=Select a third party
|
SelectCompany=Select a third party
|
||||||
|
Organization=Organisme
|
||||||
@ -20,7 +20,6 @@ ErrorDecimalLargerThanAreForbidden=Erreur, les pr
|
|||||||
DictionnarySetup=Dictionnaires
|
DictionnarySetup=Dictionnaires
|
||||||
DisableJavascript=Désactiver les fonctions javascript
|
DisableJavascript=Désactiver les fonctions javascript
|
||||||
DisableAjax=Désactiver les fonctions ajax
|
DisableAjax=Désactiver les fonctions ajax
|
||||||
UseSearchToSelectProduct=Utiliser un formulaire de recherche pour choix d'un produit (plutôt que liste déroulante)
|
|
||||||
UseSearchToSelectCompany=Utiliser un formulaire de recherche pour choix d'un tiers (plutôt que liste déroulante)
|
UseSearchToSelectCompany=Utiliser un formulaire de recherche pour choix d'un tiers (plutôt que liste déroulante)
|
||||||
NotAvailableWhenAjaxDisabled=Non disponible quand Ajax désactivé
|
NotAvailableWhenAjaxDisabled=Non disponible quand Ajax désactivé
|
||||||
JavascriptDisabled=Javascript désactivé
|
JavascriptDisabled=Javascript désactivé
|
||||||
@ -351,6 +350,7 @@ DictionnaryVAT=Taux de TVA
|
|||||||
DictionnaryPaymentConditions=Conditions de paiements
|
DictionnaryPaymentConditions=Conditions de paiements
|
||||||
DictionnaryPaymentModes=Modes de paiements
|
DictionnaryPaymentModes=Modes de paiements
|
||||||
DictionnaryTypeContact=Types de contacts
|
DictionnaryTypeContact=Types de contacts
|
||||||
|
DictionnaryEcotaxe=Barèmes Eco-participation (DEEE)
|
||||||
VATReceivedOnly=Taux special non facturé
|
VATReceivedOnly=Taux special non facturé
|
||||||
VATManagement=Gestion TVA
|
VATManagement=Gestion TVA
|
||||||
VATIsUsedDesc=Le taux de TVA proposé par défaut lors de la création de propale, facture, commande, etc répond à la règle standard suivante:<br>Si vendeur non assujeti à TVA, TVA par défaut=0. Fin de règle.<br>Si le (pays vendeur = pays acheteur) alors TVA par défaut=TVA du produit vendu. Fin de règle.<br>Si vendeur et acheteur dans Communauté européenne et bien vendu = moyen de transports neuf (auto, bateau, avion), TVA par défaut=0 (La TVA doit être payé par acheteur au centre d'impots de son pays et non au vendeur). Fin de règle.<br>Si vendeur et acheteur dans Communauté européenne et acheteur = particulier ou entreprise sans num TVA intra alors TVA par défaut=TVA du produit vendu. Fin de règle.<br>Si vendeur et acheteur dans Communauté européenne et acheteur = entreprise avec num TVA intra alors TVA par défaut=0. Fin de règle.<br>Sinon TVA proposée par défaut=0. Fin de règle.<br>
|
VATIsUsedDesc=Le taux de TVA proposé par défaut lors de la création de propale, facture, commande, etc répond à la règle standard suivante:<br>Si vendeur non assujeti à TVA, TVA par défaut=0. Fin de règle.<br>Si le (pays vendeur = pays acheteur) alors TVA par défaut=TVA du produit vendu. Fin de règle.<br>Si vendeur et acheteur dans Communauté européenne et bien vendu = moyen de transports neuf (auto, bateau, avion), TVA par défaut=0 (La TVA doit être payé par acheteur au centre d'impots de son pays et non au vendeur). Fin de règle.<br>Si vendeur et acheteur dans Communauté européenne et acheteur = particulier ou entreprise sans num TVA intra alors TVA par défaut=TVA du produit vendu. Fin de règle.<br>Si vendeur et acheteur dans Communauté européenne et acheteur = entreprise avec num TVA intra alors TVA par défaut=0. Fin de règle.<br>Sinon TVA proposée par défaut=0. Fin de règle.<br>
|
||||||
@ -682,6 +682,8 @@ NumberOfProductShowInSelect=Nombre de produits max dans les listes d
|
|||||||
ConfirmDeleteProductLineAbility=Confirmation de suppression d'une ligne produit dans les formulaires
|
ConfirmDeleteProductLineAbility=Confirmation de suppression d'une ligne produit dans les formulaires
|
||||||
ModifyProductDescAbility=Personnalisation des descriptions produits dans les formulaires
|
ModifyProductDescAbility=Personnalisation des descriptions produits dans les formulaires
|
||||||
ViewProductDescInFormAbility=Visualisation des descriptions produits dans les formulaires
|
ViewProductDescInFormAbility=Visualisation des descriptions produits dans les formulaires
|
||||||
|
UseSearchToSelectProduct=Utiliser un formulaire de recherche pour choix d'un produit (plutôt que liste déroulante)
|
||||||
|
UseEcoTaxeAbility=Prise en charge des éco-taxes (DEEE)
|
||||||
##### Syslog #####
|
##### Syslog #####
|
||||||
SyslogSetup=Configuration du module Syslog
|
SyslogSetup=Configuration du module Syslog
|
||||||
SyslogOutput=Sortie des log
|
SyslogOutput=Sortie des log
|
||||||
|
|||||||
@ -224,4 +224,5 @@ DeleteFile=Suppression d'un fichier
|
|||||||
ConfirmDeleteFile=Êtes-vous sûr de vouloir supprimer ce fichier ?
|
ConfirmDeleteFile=Êtes-vous sûr de vouloir supprimer ce fichier ?
|
||||||
AllocateCommercial=Affecter un commercial
|
AllocateCommercial=Affecter un commercial
|
||||||
SelectCountry=Sélectionner un pays
|
SelectCountry=Sélectionner un pays
|
||||||
SelectCompany=Sélectionner un tiers
|
SelectCompany=Sélectionner un tiers
|
||||||
|
Organization=Organisme
|
||||||
@ -1521,3 +1521,19 @@ insert into `llx_menu_const` (`rowid`, `fk_menu`, `fk_constraint`, `user`) value
|
|||||||
insert into `llx_menu_const` (`rowid`, `fk_menu`, `fk_constraint`, `user`) values (112, 4901, 6, 2);
|
insert into `llx_menu_const` (`rowid`, `fk_menu`, `fk_constraint`, `user`) values (112, 4901, 6, 2);
|
||||||
insert into `llx_menu_const` (`rowid`, `fk_menu`, `fk_constraint`, `user`) values (113, 5000, 26, 2);
|
insert into `llx_menu_const` (`rowid`, `fk_menu`, `fk_constraint`, `user`) values (113, 5000, 26, 2);
|
||||||
insert into `llx_menu_const` (`rowid`, `fk_menu`, `fk_constraint`, `user`) values (114, 5001, 6, 2);
|
insert into `llx_menu_const` (`rowid`, `fk_menu`, `fk_constraint`, `user`) values (114, 5001, 6, 2);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Eco-Taxes
|
||||||
|
--
|
||||||
|
|
||||||
|
-- France (Organisme ERP)
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (1, 'PAM-A', 'Matériels électriques < 0,2kg', 0.01000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (2, 'PAM-B', 'Matériels électriques >= 0,2 kg et < 0,5 kg', 0.03000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (3, 'PAM-C', 'Matériels électriques >= 0,5 kg et < 1 kg', 0.04000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (4, 'PAM-D', 'Matériels électriques >= 1 kg et < 2 kg', 0.13000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (5, 'PAM-E', 'Matériels électriques >= 2 kg et < 4kg', 0.21000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (6, 'PAM-F', 'Matériels électriques >= 4 kg et <8 kg', 0.42000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (7, 'PAM-G', 'Matériels électriques >= 8 kg et < 15 kg', 0.84000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (8, 'PAM-H', 'Matériels électriques >= 15 kg et < 20 kg', 1.25000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (9, 'PAM-I', 'Matériels électriques >= 20 kg et <30 kg', 1.88000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (10, 'PAM-J', 'Matériels électriques >= 30 kg', 3.34000000, 'ERP', 1, 1);
|
||||||
@ -755,4 +755,24 @@ update llx_fichinter set tms=date_valid where tms < date_valid;
|
|||||||
ALTER TABLE llx_commande_fournisseur DROP INDEX ref;
|
ALTER TABLE llx_commande_fournisseur DROP INDEX ref;
|
||||||
ALTER TABLE llx_commande_fournisseur ADD UNIQUE INDEX uk_commande_fournisseur_ref (ref, fk_soc);
|
ALTER TABLE llx_commande_fournisseur ADD UNIQUE INDEX uk_commande_fournisseur_ref (ref, fk_soc);
|
||||||
|
|
||||||
|
create table llx_c_ecotaxe
|
||||||
|
(
|
||||||
|
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
code varchar(64) NOT NULL,
|
||||||
|
libelle varchar(256),
|
||||||
|
price double(16,8),
|
||||||
|
organization varchar(256),
|
||||||
|
fk_pays integer NOT NULL,
|
||||||
|
active tinyint DEFAULT 1 NOT NULL
|
||||||
|
)type=innodb;
|
||||||
|
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (1, 'PAM-A', 'Matériels électriques < 0,2kg', 0.01000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (2, 'PAM-B', 'Matériels électriques >= 0,2 kg et < 0,5 kg', 0.03000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (3, 'PAM-C', 'Matériels électriques >= 0,5 kg et < 1 kg', 0.04000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (4, 'PAM-D', 'Matériels électriques >= 1 kg et < 2 kg', 0.13000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (5, 'PAM-E', 'Matériels électriques >= 2 kg et < 4kg', 0.21000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (6, 'PAM-F', 'Matériels électriques >= 4 kg et <8 kg', 0.42000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (7, 'PAM-G', 'Matériels électriques >= 8 kg et < 15 kg', 0.84000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (8, 'PAM-H', 'Matériels électriques >= 15 kg et < 20 kg', 1.25000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (9, 'PAM-I', 'Matériels électriques >= 20 kg et <30 kg', 1.88000000, 'ERP', 1, 1);
|
||||||
|
INSERT INTO `llx_c_ecotaxe` (`rowid`, `code`, `libelle`, `price`, `organization`, `fk_pays`, `active`) VALUES (10, 'PAM-J', 'Matériels électriques >= 30 kg', 3.34000000, 'ERP', 1, 1);
|
||||||
32
mysql/tables/llx_c_ecotaxe.sql
Normal file
32
mysql/tables/llx_c_ecotaxe.sql
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
-- ========================================================================
|
||||||
|
-- Copyright (C) 2007 Régis Houssin <regis.houssin@cap-networks.com>
|
||||||
|
--
|
||||||
|
-- $Id$
|
||||||
|
-- $Source$
|
||||||
|
--
|
||||||
|
-- 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 2 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, write to the Free Software
|
||||||
|
-- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
--
|
||||||
|
-- ========================================================================
|
||||||
|
|
||||||
|
create table llx_c_ecotaxe
|
||||||
|
(
|
||||||
|
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
code varchar(64) NOT NULL, -- Code servant à la traduction et à la référence interne
|
||||||
|
libelle varchar(256), -- Description
|
||||||
|
price double(16,8), -- Montant HT
|
||||||
|
organization varchar(256), -- Organisme gérant le barème tarifaire
|
||||||
|
fk_pays integer NOT NULL, -- Pays correspondant
|
||||||
|
active tinyint DEFAULT 1 NOT NULL
|
||||||
|
)type=innodb;
|
||||||
Loading…
Reference in New Issue
Block a user