From 489d62dbf1a0238f6f9b83b556de5dc25ee5f17a Mon Sep 17 00:00:00 2001 From: fhenry Date: Tue, 2 Apr 2013 10:52:39 +0200 Subject: [PATCH 1/5] Better extrafield date management --- htdocs/core/class/commonobject.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 4f7ce047d9b..160bae37c0e 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -2133,10 +2133,10 @@ abstract class CommonObject $this->array_options[$key] = price2num($this->array_options[$key]); break; case 'date': - $this->array_options[$key] = dol_print_date($this->array_options[$key],'dayrfc'); + $this->array_options[$key]=$this->db->idate($this->array_options[$key]); break; case 'datetime': - $this->array_options[$key] = dol_print_date($this->array_options[$key],'dayhourrfc'); + $this->array_options[$key]=$this->db->idate($this->array_options[$key]); break; } } From 893fed928472000d47083c33cfc41505f94dbfe2 Mon Sep 17 00:00:00 2001 From: fhenry Date: Tue, 2 Apr 2013 11:56:53 +0200 Subject: [PATCH 2/5] [ task #783 ] Add checkbox and radio into extrafield feature --- htdocs/core/class/extrafields.class.php | 61 +++++++++++++++++-- htdocs/core/tpl/admin_extrafields_add.tpl.php | 10 ++- htdocs/langs/ca_ES/admin.lang | 5 +- htdocs/langs/en_US/admin.lang | 4 ++ htdocs/langs/es_ES/admin.lang | 7 ++- htdocs/langs/fr_FR/admin.lang | 3 + 6 files changed, 82 insertions(+), 8 deletions(-) diff --git a/htdocs/core/class/extrafields.class.php b/htdocs/core/class/extrafields.class.php index 5491c727ad6..d35fb8dd369 100755 --- a/htdocs/core/class/extrafields.class.php +++ b/htdocs/core/class/extrafields.class.php @@ -64,7 +64,9 @@ class ExtraFields 'phone'=>'ExtrafieldPhone', 'mail'=>'ExtrafieldMail', 'select' => 'ExtrafieldSelect', - 'separate' => 'ExtrafieldSeparator' + 'separate' => 'ExtrafieldSeparator', + 'checkbox' => 'ExtrafieldCheckBox', + 'radio' => 'ExtrafieldRadio', ); /** @@ -166,7 +168,7 @@ class ExtraFields }elseif($type=='mail') { $typedb='varchar'; $lengthdb='128'; - } elseif ($type=='select') { + } elseif (($type=='select') || ($type=='radio') ||($type=='checkbox')){ $typedb='text'; $lengthdb=''; } else { @@ -376,7 +378,7 @@ class ExtraFields }elseif($type=='mail') { $typedb='varchar'; $lengthdb='128'; - } elseif ($type=='select') { + } elseif (($type=='select') || ($type=='radio') ||($type=='checkbox')) { $typedb='text'; $lengthdb=''; } else { @@ -676,6 +678,37 @@ class ExtraFields } $out.=''; } + elseif ($type == 'checkbox') + { + $out=''; + $value_arr=explode(',',$value); + + foreach ($param['options'] as $keyopt=>$val ) + { + + $out.=''; + } + } + elseif ($type == 'radio') + { + $out=''; + foreach ($param['options'] as $keyopt=>$val ) + { + $out.=''; + } + } /* Add comments if ($type == 'date') $out.=' (YYYY-MM-DD)'; elseif ($type == 'datetime') $out.=' (YYYY-MM-DD HH:MM:SS)'; @@ -740,6 +773,21 @@ class ExtraFields { $value=$params['options'][$value]; } + elseif ($type == 'radio') + { + $value=$params['options'][$value]; + } + elseif ($type == 'checkbox') + { + $value_arr=explode(',',$value); + $value=''; + if (is_array($value_arr)) + { + foreach ($value_arr as $keyval=>$valueval) { + $value.=$params['options'][$valueval].'
'; + } + } + } else { $showsize=round($size); @@ -785,7 +833,12 @@ class ExtraFields // Clean parameters $value_key=dol_mktime($_POST["options_".$key."hour"], $_POST["options_".$key."min"], 0, $_POST["options_".$key."month"], $_POST["options_".$key."day"], $_POST["options_".$key."year"]); } - else + else if (in_array($key_type,array('checkbox'))) + { + $value_arr=GETPOST("options_".$key); + $value_key=implode($value_arr,','); + } + else { $value_key=GETPOST("options_".$key); } diff --git a/htdocs/core/tpl/admin_extrafields_add.tpl.php b/htdocs/core/tpl/admin_extrafields_add.tpl.php index 5be1b8baaae..5272c06b31f 100644 --- a/htdocs/core/tpl/admin_extrafields_add.tpl.php +++ b/htdocs/core/tpl/admin_extrafields_add.tpl.php @@ -48,6 +48,8 @@ else if (type == 'boolean') { size.val('').attr('disabled','disabled'); unique.attr('disabled','disabled'); jQuery("#value_choice").hide();} else if (type == 'price') { size.val('').attr('disabled','disabled'); unique.attr('disabled','disabled'); jQuery("#value_choice").hide();} else if (type == 'select') { size.val('').attr('disabled','disabled'); unique.attr('disabled','disabled'); jQuery("#value_choice").show();} + else if (type == 'checkbox') { size.val('').attr('disabled','disabled'); unique.attr('disabled','disabled'); jQuery("#value_choice").show();} + else if (type == 'radio') { size.val('').attr('disabled','disabled'); unique.attr('disabled','disabled'); jQuery("#value_choice").show();} else if (type == 'separate') { size.val('').attr('disabled','disabled'); unique.attr('disabled','disabled'); required.val('').attr('disabled','disabled'); default_value.val('').attr('disabled','disabled'); jQuery("#value_choice").hide();} else size.val('').attr('disabled','disabled'); } @@ -73,14 +75,20 @@ trans("Label"); ?> trans("AttributeCode"); ?> (trans("AlphaNumOnlyCharsAndNoSpace"); ?>) - + + trans("Value"); ?> + + +
+textwithpicto('', $langs->trans("ExtrafieldParamHelp"),1,0)?>
+ trans("DefaultValue"); ?>"> diff --git a/htdocs/langs/ca_ES/admin.lang b/htdocs/langs/ca_ES/admin.lang index f0e24d649bd..86a446c255f 100644 --- a/htdocs/langs/ca_ES/admin.lang +++ b/htdocs/langs/ca_ES/admin.lang @@ -354,7 +354,10 @@ ExtrafieldPhone=Telèfon ExtrafieldPrice=Preu ExtrafieldMail=Correu ExtrafieldSelect=Llista de selecció -ExtrafieldSeparator= +ExtrafieldSeparator=Separator +ExtrafieldCheckBox=Casilla +ExtrafieldRadio=Opción +ExtrafieldParamHelp=Optiones Lista esta llave,valor

para exemplo :
1,texto1
2,texto2
3,texto3
... LibraryToBuildPDF=Llibreria usada per a la creació d'arxius PDF WarningUsingFPDF=Atenció: El seu arxiu conf.php conté la directiva dolibarr_pdf_force_fpdf=1. Això fa que s'usi la llibreria FPDF per generar els seus arxius PDF. Aquesta llibreria és antiga i no cobreix algunes funcionalitats (Unicode, transparència d'imatges, idiomes ciríl · lics, àrabs o asiàtics, etc.), Pel que pot tenir problemes en la generació dels PDF.
Per resoldre-ho, i disposar d'un suport complet de PDF, pot descarregar la llibreria TCPDF , i a continuació comentar o eliminar la línia $dolibarr_pdf_force_fpdf=1, i afegir al seu lloc $dolibarr_lib_TCPDF_PATH='ruta_a_TCPDF' LocalTaxDesc=Alguns països apliquen 2 o 3 taxes a cada línia de factura. Si és el cas, escolliu el tipus de la segona i tercera taxa i el seu valor. Els possibles tipus són:
1: taxa local aplicable a productes i serveis sense IVA (IVA no s'aplica a la taxa local)
2: taxa local s'aplica a productes i serveis abans de l'IVA (IVA es calcula sobre import + taxa local)
3: taxa local s'aplica a productes sense IVA (IVA no s'aplica a la taxa local)
4: taxa local s'aplica a productes abans de l'IVA (IVA es calcula sobre l'import + taxa local)
5: taxa local s'aplica a serveis sense IVA (IVA no s'aplica a la taxa local)
6: taxa local s'aplica a serveis abans de l'IVA (IVA es calcula sobre import + taxa local) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index ff28b59e083..07ba4abfa1b 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -357,6 +357,10 @@ ExtrafieldPhone = Phone ExtrafieldPrice = Price ExtrafieldMail = Email ExtrafieldSelect = Select list +ExtrafieldSeparator=Separator +ExtrafieldCheckBox=Checkbox +ExtrafieldRadio=Radio button +ExtrafieldParamHelp=Parameters list have to be like key,value

for exemple :
1,value1
2,value2
3,value3
... LibraryToBuildPDF=Library used to build PDF WarningUsingFPDF=Warning: Your conf.php contains directive dolibarr_pdf_force_fpdf=1. This means you use the FPDF library to generate PDF files. This library is old and does not support a lot of features (Unicode, image transparency, cyrillic, arab and asiatic languages, ...), so you may experience errors during PDF generation.
To solve this and have a full support of PDF generation, please download TCPDF library, then comment or remove the line $dolibarr_pdf_force_fpdf=1, and add instead $dolibarr_lib_TCPDF_PATH='path_to_TCPDF_dir' LocalTaxDesc=Some countries apply 2 or 3 taxes on each invoice line. If this is the case, choose type for second and third tax and its rate. Possible type are:
1 : local tax apply on products and services without vat (vat is not applied on local tax)
2 : local tax apply on products and services before vat (vat is calculated on amount + localtax)
3 : local tax apply on products without vat (vat is not applied on local tax)
4 : local tax apply on products before vat (vat is calculated on amount + localtax)
5 : local tax apply on services without vat (vat is not applied on local tax)
6 : local tax apply on services before vat (vat is calculated on amount + localtax) diff --git a/htdocs/langs/es_ES/admin.lang b/htdocs/langs/es_ES/admin.lang index ce9e2d6d6e2..c3107679ba3 100644 --- a/htdocs/langs/es_ES/admin.lang +++ b/htdocs/langs/es_ES/admin.lang @@ -349,12 +349,15 @@ Int=Numérico entero Float=Decimal DateAndTime=Fecha y hora Unique=Único -Boolean=Boleano (Checkbox) +Boolean=Boleano (Casilla unico) ExtrafieldPhone=Teléfono ExtrafieldPrice=Precio ExtrafieldMail=Correo ExtrafieldSelect=Lista de selección -ExtrafieldSeparator= +ExtrafieldSeparator=Separator +ExtrafieldCheckBox=Casilla +ExtrafieldRadio=Opción +ExtrafieldParamHelp=Optiones Lista esta llave,valor

para exemplo :
1,texto1
2,texto2
3,texto3
... LibraryToBuildPDF=Librería usada para la creación de archivos PDF WarningUsingFPDF=Atención: Su archivo conf.php contiene la directiva dolibarr_pdf_force_fpdf=1. Esto hace que se use la librería FPDF para generar sus archivos PDF. Esta librería es antigua y no cubre algunas funcionalidades (Unicode, transparencia de imágenes, idiomas cirílicos, árabes o asiáticos, etc.), por lo que puede tener problemas en la generación de los PDF.
Para resolverlo, y disponer de un soporte completo de PDF, puede descargar la librería TCPDF , y a continuación comentar o eliminar la línea $dolibarr_pdf_force_fpdf=1, y añadir en su lugar $dolibarr_lib_TCPDF_PATH='ruta_a_TCPDF' LocalTaxDesc=Algunos países aplican 2 o 3 tasas a cada línea de factura. Si es el caso, escoja el tipo de la segunda y tercera tasa y su valor. Los posibles tipos son:
1 : tasa local aplicable a productos y servicios sin IVA (IVA no se aplica en la tasa local)
2 : tasa local se aplica a productos y servicios antes del IVA (IVA se calcula sobre importe+tasa local)
3 : tasa local se aplica a productos sin IVA (IVA no se aplica en la tasa local)
4 : tasa local se aplica a productos antes del IVA (IVA se calcula sobre el importe+tasa local)
5 : tasa local se aplica a servicios sin IVA (IVA no se aplica a la tasa local)
6 : tasa local se aplica a servicios antes del IVA (IVA se calcula sobre importe + tasa local) diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang index 8b56650b43b..57e78230682 100644 --- a/htdocs/langs/fr_FR/admin.lang +++ b/htdocs/langs/fr_FR/admin.lang @@ -355,6 +355,9 @@ ExtrafieldPrice = Prix ExtrafieldMail = Email ExtrafieldSelect = Liste de sélection ExtrafieldSeparator = Séparateur de champ +ExtrafieldCheckBox=Case a cochée +ExtrafieldRadio=Case d'option +ExtrafieldParamHelp=La liste doit être de la forme clef,valeur

par exemple :
1,valeur1
2,valeur2
3,valeur3
... LibraryToBuildPDF=Bibliothèque utilisée pour la génération des PDF WarningUsingFPDF=Attention: Votre fichier conf.php contient la directive dolibarr_pdf_force_fpdf=1. Cela signifie que vous utilisez la librairie FPDF pour générer vos fichiers PDF. Cette librairie est ancienne et ne couvre pas de nombreuses fonctionnalitée (Unicode, transparence des images, langues cyrillic, arabes ou asiatiques...), aussi vous pouvez rencontrez des problèmes durant la génération des PDF.
Pour résoudre cela et avoir un support complet de PDF, vous pouvez télécharger la librairie TCPDF puis commenter ou supprimer la ligne $dolibarr_pdf_force_fpdf=1, et ajouter à la place $dolibarr_lib_TCPDF_PATH='chemin_vers_TCPDF' LocalTaxDesc=Certains pays appliquent 2 voir 3 taux sur chaque ligne de facture. Si c'est le cas, choisissez le type du deuxième et troisième taux et sa valeur. Les types possibles sont:
1 : taxe locale sur les produits et services hors tva (la tva n'est pas appliquée sur la taxe locale)
2 : taxe locale sur les produits et services avant tva (la tva est appliquée sur le montant + la taxe locale)
3 : taxe locale uniquement sur les produits hors tva (la tva n'est pas appliquée sur la taxe locale)
4 : taxe locale uniquement sur les produits avant tva (la tva est appliquée sur le montant + la taxe locale)
5 : taxe locale uniquement sur les services hors tva (la tva n'est pas appliquée sur la taxe locale)
6 : taxe locale uniquement sur les service avant tva (la tva est appliquée sur le montant + la taxe locale) From e93b6141e10c40d4c15808299e1a622f09cf4dbf Mon Sep 17 00:00:00 2001 From: fhenry Date: Tue, 2 Apr 2013 12:04:37 +0200 Subject: [PATCH 3/5] Add translation for extrafield --- htdocs/core/admin_extrafields.inc.php | 14 ++++++++++++++ htdocs/langs/en_US/errors.lang | 2 ++ htdocs/langs/es_ES/errors.lang | 2 ++ htdocs/langs/fr_FR/errors.lang | 4 +++- 4 files changed, 21 insertions(+), 1 deletion(-) diff --git a/htdocs/core/admin_extrafields.inc.php b/htdocs/core/admin_extrafields.inc.php index ea4f26c8509..a39372c4ca5 100644 --- a/htdocs/core/admin_extrafields.inc.php +++ b/htdocs/core/admin_extrafields.inc.php @@ -66,6 +66,20 @@ if ($action == 'add') $mesg[]=$langs->trans("ErrorNoValueForSelectType"); $action = 'create'; } + if (GETPOST('type')=='checkbox' && !GETPOST('param')) + { + $error++; + $langs->load("errors"); + $mesg[]=$langs->trans("ErrorNoValueForCheckBoxType"); + $action = 'create'; + } + if (GETPOST('type')=='radio' && !GETPOST('param')) + { + $error++; + $langs->load("errors"); + $mesg[]=$langs->trans("ErrorNoValueForRadioType"); + $action = 'create'; + } if (! $error) { diff --git a/htdocs/langs/en_US/errors.lang b/htdocs/langs/en_US/errors.lang index 184c6bcc325..cefedc89f41 100644 --- a/htdocs/langs/en_US/errors.lang +++ b/htdocs/langs/en_US/errors.lang @@ -59,6 +59,8 @@ ErrorFileSizeTooLarge=File size is too large. ErrorSizeTooLongForIntType=Size too long for int type (%s digits maximum) ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list +ErrorNoValueForCheckBoxType=Please fill value for checkbox list +ErrorNoValueForRadioType=Please fill value for radio list ErrorFieldCanNotContainSpecialCharacters=Field %s must not contains special characters. ErrorNoAccountancyModuleLoaded=No accountancy module activated ErrorExportDuplicateProfil=This profil name already exists for this export set. diff --git a/htdocs/langs/es_ES/errors.lang b/htdocs/langs/es_ES/errors.lang index 5a5ce7639d6..72c5a778f6f 100644 --- a/htdocs/langs/es_ES/errors.lang +++ b/htdocs/langs/es_ES/errors.lang @@ -60,6 +60,8 @@ ErrorFileSizeTooLarge=El tamaño del fichero es demasiado grande. ErrorSizeTooLongForIntType=Longitud del campo demasiado largo para el tipo int (máximo %s cifras) ErrorSizeTooLongForVarcharType=Longitud del campo demasiado largo para el tipo cadena (máximo %s cifras) ErrorNoValueForSelectType=Los valores de la lista deben ser indicados +ErrorNoValueForCheckBoxType=Los valores de la lista deben ser indicados +ErrorNoValueForRadioType=Los valores de la lista deben ser indicados ErrorFieldCanNotContainSpecialCharacters=El campo %s no debe contener carácteres especiales ErrorNoAccountancyModuleLoaded=Módulo de contabilidad no activado ErrorExportDuplicateProfil=El nombre del perfil ya existe para este lote de exportación diff --git a/htdocs/langs/fr_FR/errors.lang b/htdocs/langs/fr_FR/errors.lang index 576d9d4bcb6..1d8857deedc 100644 --- a/htdocs/langs/fr_FR/errors.lang +++ b/htdocs/langs/fr_FR/errors.lang @@ -59,7 +59,9 @@ ErrorUploadBlockedByAddon=Upload bloqué par un plugin PHP/Apache. ErrorFileSizeTooLarge=La taille du fichier est trop grande. ErrorSizeTooLongForIntType=Longueur de champ trop longue pour le type int (%s chiffres maximum) ErrorSizeTooLongForVarcharType=Longueur de champ trop longue pour le type chaine (%s caractères maximum) -ErrorNoValueForSelectType=Les valeurs de la liste doivent être renseignées +ErrorNoValueForSelectType=Les valeurs de la liste de selection doivent être renseignées +ErrorNoValueForCheckBoxType=Les valeurs de la liste de case a cochées doivent être renseignées +ErrorNoValueForRadioType=Les valeurs de la liste d'options doivent être renseignées ErrorFieldCanNotContainSpecialCharacters=Le champ %s ne peut contenir de caractères spéciaux. ErrorNoAccountancyModuleLoaded=Aucun module de comptabilité activé ErrorExportDuplicateProfil=Ce nom de profil existe déjà pour ce lot d'export. From 735e107a51f39ae48453372cd2b5605b01150bd1 Mon Sep 17 00:00:00 2001 From: fhenry Date: Tue, 2 Apr 2013 14:12:21 +0200 Subject: [PATCH 4/5] Better error management on extrafailed input --- htdocs/core/admin_extrafields.inc.php | 75 +++++++++++++++++++ .../core/tpl/admin_extrafields_edit.tpl.php | 4 +- htdocs/langs/en_US/errors.lang | 1 + htdocs/langs/es_ES/errors.lang | 1 + htdocs/langs/fr_FR/admin.lang | 2 +- htdocs/langs/fr_FR/errors.lang | 1 + 6 files changed, 81 insertions(+), 3 deletions(-) diff --git a/htdocs/core/admin_extrafields.inc.php b/htdocs/core/admin_extrafields.inc.php index a39372c4ca5..02eab4db893 100644 --- a/htdocs/core/admin_extrafields.inc.php +++ b/htdocs/core/admin_extrafields.inc.php @@ -80,6 +80,33 @@ if ($action == 'add') $mesg[]=$langs->trans("ErrorNoValueForRadioType"); $action = 'create'; } + if (((GETPOST('type')=='radio') || (GETPOST('type')=='checkbox') || (GETPOST('type')=='radio')) && GETPOST('param')) + { + // Construct array for parameter (value of select list) + $parameters = GETPOST('param'); + $parameters_array = explode("\r\n",$parameters); + foreach($parameters_array as $param_ligne) + { + if (!empty($param_ligne)) { + if (preg_match_all('/,/',$param_ligne,$matches)) + { + if (count($matches[0])>1) { + $error++; + $langs->load("errors"); + $mesg[]=$langs->trans("ErrorBadFormatValueList",$param_ligne); + $action = 'create'; + } + } + else + { + $error++; + $langs->load("errors"); + $mesg[]=$langs->trans("ErrorBadFormatValueList",$param_ligne); + $action = 'create'; + } + } + } + } if (! $error) { @@ -152,6 +179,54 @@ if ($action == 'update') $mesg[]=$langs->trans("ErrorSizeTooLongForIntType",$maxsizeint); $action = 'edit'; } + if (GETPOST('type')=='select' && !GETPOST('param')) + { + $error++; + $langs->load("errors"); + $mesg[]=$langs->trans("ErrorNoValueForSelectType"); + $action = 'edit'; + } + if (GETPOST('type')=='checkbox' && !GETPOST('param')) + { + $error++; + $langs->load("errors"); + $mesg[]=$langs->trans("ErrorNoValueForCheckBoxType"); + $action = 'edit'; + } + if (GETPOST('type')=='radio' && !GETPOST('param')) + { + $error++; + $langs->load("errors"); + $mesg[]=$langs->trans("ErrorNoValueForRadioType"); + $action = 'edit'; + } + if (((GETPOST('type')=='radio') || (GETPOST('type')=='checkbox') || (GETPOST('type')=='radio')) && GETPOST('param')) + { + // Construct array for parameter (value of select list) + $parameters = GETPOST('param'); + $parameters_array = explode("\r\n",$parameters); + foreach($parameters_array as $param_ligne) + { + if (!empty($param_ligne)) { + if (preg_match_all('/,/',$param_ligne,$matches)) + { + if (count($matches[0])>1) { + $error++; + $langs->load("errors"); + $mesg[]=$langs->trans("ErrorBadFormatValueList",$param_ligne); + $action = 'edit'; + } + } + else + { + $error++; + $langs->load("errors"); + $mesg[]=$langs->trans("ErrorBadFormatValueList",$param_ligne); + $action = 'edit'; + } + } + } + } if (! $error) { diff --git a/htdocs/core/tpl/admin_extrafields_edit.tpl.php b/htdocs/core/tpl/admin_extrafields_edit.tpl.php index c2112b636f2..181fcd55bbc 100644 --- a/htdocs/core/tpl/admin_extrafields_edit.tpl.php +++ b/htdocs/core/tpl/admin_extrafields_edit.tpl.php @@ -55,7 +55,7 @@ $required=$extrafields->attribute_required[$attrname]; $pos=$extrafields->attribute_pos[$attrname]; $param=$extrafields->attribute_param[$attrname]; -if($type == 'select' && is_array($param)) +if((($type == 'select') || ($type == 'checkbox') ||(($type == 'radio'))) && is_array($param)) { $param_chain = ''; foreach ($param['options'] as $key => $value) @@ -80,7 +80,7 @@ if($type == 'select' && is_array($param)) diff --git a/htdocs/langs/en_US/errors.lang b/htdocs/langs/en_US/errors.lang index cefedc89f41..48795ba2ce7 100644 --- a/htdocs/langs/en_US/errors.lang +++ b/htdocs/langs/en_US/errors.lang @@ -61,6 +61,7 @@ ErrorSizeTooLongForVarcharType=Size too long for string type (%s chars maximum) ErrorNoValueForSelectType=Please fill value for select list ErrorNoValueForCheckBoxType=Please fill value for checkbox list ErrorNoValueForRadioType=Please fill value for radio list +ErrorBadFormatValueList=The list value cannot have more than one come : %s, but need at least one: llave,valores ErrorFieldCanNotContainSpecialCharacters=Field %s must not contains special characters. ErrorNoAccountancyModuleLoaded=No accountancy module activated ErrorExportDuplicateProfil=This profil name already exists for this export set. diff --git a/htdocs/langs/es_ES/errors.lang b/htdocs/langs/es_ES/errors.lang index 72c5a778f6f..a3fa3a004e4 100644 --- a/htdocs/langs/es_ES/errors.lang +++ b/htdocs/langs/es_ES/errors.lang @@ -62,6 +62,7 @@ ErrorSizeTooLongForVarcharType=Longitud del campo demasiado largo para el tipo c ErrorNoValueForSelectType=Los valores de la lista deben ser indicados ErrorNoValueForCheckBoxType=Los valores de la lista deben ser indicados ErrorNoValueForRadioType=Los valores de la lista deben ser indicados +ErrorBadFormatValueList=Los valores de la lista no peudo contener mas de una coma : %s, pero necessita una: llave,valores ErrorFieldCanNotContainSpecialCharacters=El campo %s no debe contener carácteres especiales ErrorNoAccountancyModuleLoaded=Módulo de contabilidad no activado ErrorExportDuplicateProfil=El nombre del perfil ya existe para este lote de exportación diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang index 57e78230682..d1add32c505 100644 --- a/htdocs/langs/fr_FR/admin.lang +++ b/htdocs/langs/fr_FR/admin.lang @@ -355,7 +355,7 @@ ExtrafieldPrice = Prix ExtrafieldMail = Email ExtrafieldSelect = Liste de sélection ExtrafieldSeparator = Séparateur de champ -ExtrafieldCheckBox=Case a cochée +ExtrafieldCheckBox=Case à cocher ExtrafieldRadio=Case d'option ExtrafieldParamHelp=La liste doit être de la forme clef,valeur

par exemple :
1,valeur1
2,valeur2
3,valeur3
... LibraryToBuildPDF=Bibliothèque utilisée pour la génération des PDF diff --git a/htdocs/langs/fr_FR/errors.lang b/htdocs/langs/fr_FR/errors.lang index 1d8857deedc..f1316e03d13 100644 --- a/htdocs/langs/fr_FR/errors.lang +++ b/htdocs/langs/fr_FR/errors.lang @@ -62,6 +62,7 @@ ErrorSizeTooLongForVarcharType=Longueur de champ trop longue pour le type chaine ErrorNoValueForSelectType=Les valeurs de la liste de selection doivent être renseignées ErrorNoValueForCheckBoxType=Les valeurs de la liste de case a cochées doivent être renseignées ErrorNoValueForRadioType=Les valeurs de la liste d'options doivent être renseignées +ErrorBadFormatValueList=Les valeurs de la liste ne peuvent pas contenir plus d'une virgule : %s, mais doivent en avoir au moins une: clef,valeur ErrorFieldCanNotContainSpecialCharacters=Le champ %s ne peut contenir de caractères spéciaux. ErrorNoAccountancyModuleLoaded=Aucun module de comptabilité activé ErrorExportDuplicateProfil=Ce nom de profil existe déjà pour ce lot d'export. From ae00d8b2143482317d95459321c991527050f3a5 Mon Sep 17 00:00:00 2001 From: fhenry Date: Tue, 2 Apr 2013 15:03:01 +0200 Subject: [PATCH 5/5] Add import_key into llx_product_price --- htdocs/install/mysql/migration/3.3.0-3.4.0.sql | 1 + htdocs/install/mysql/tables/llx_product_price.sql | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/htdocs/install/mysql/migration/3.3.0-3.4.0.sql b/htdocs/install/mysql/migration/3.3.0-3.4.0.sql index c47b7a9adcf..d36cd39c441 100755 --- a/htdocs/install/mysql/migration/3.3.0-3.4.0.sql +++ b/htdocs/install/mysql/migration/3.3.0-3.4.0.sql @@ -208,4 +208,5 @@ ALTER TABLE llx_user ADD COLUMN zip varchar(25); ALTER TABLE llx_user ADD COLUMN town varchar(50); ALTER TABLE llx_user ADD COLUMN fk_state integer DEFAULT 0; ALTER TABLE llx_user ADD COLUMN fk_country integer DEFAULT 0; +ALTER TABLE llx_product_price ADD COLUMN import_key varchar(14) AFTER price_by_qty; diff --git a/htdocs/install/mysql/tables/llx_product_price.sql b/htdocs/install/mysql/tables/llx_product_price.sql index 86cf67b2e36..e83fbdccc2c 100644 --- a/htdocs/install/mysql/tables/llx_product_price.sql +++ b/htdocs/install/mysql/tables/llx_product_price.sql @@ -37,6 +37,7 @@ create table llx_product_price localtax2_tx double(6,3) DEFAULT 0, fk_user_author integer, tosell tinyint DEFAULT 1, - price_by_qty integer NOT NULL DEFAULT 0 + price_by_qty integer NOT NULL DEFAULT 0, + import_key varchar(14) )ENGINE=innodb;