Merge remote-tracking branch 'origin/3.5' into develop
Conflicts: htdocs/core/lib/functions2.lib.php htdocs/install/mysql/migration/repair.sql htdocs/langs/en_US/errors.lang htdocs/product/fiche.php htdocs/projet/tasks/task.php
This commit is contained in:
commit
97fce71218
@ -92,6 +92,10 @@ removed. You must now use the 6 parameters way. See file modMyModule.class.php f
|
|||||||
|
|
||||||
***** ChangeLog for 3.5.3 compared to 3.5.2 *****
|
***** ChangeLog for 3.5.3 compared to 3.5.2 *****
|
||||||
Fix: Error on field accountancy code for export profile of invoices.
|
Fix: Error on field accountancy code for export profile of invoices.
|
||||||
|
Fix: [ bug #1351 ] VIES verification link broken.
|
||||||
|
Fix: [ bug #1352 ] Removing a shipping does not remove the delivery.
|
||||||
|
Fix: Option MAIN_INVERT_SENDER_RECIPIENT broken with typhon template.
|
||||||
|
|
||||||
|
|
||||||
***** ChangeLog for 3.5.2 compared to 3.5.1 *****
|
***** ChangeLog for 3.5.2 compared to 3.5.1 *****
|
||||||
Fix: Can't add user for a task.
|
Fix: Can't add user for a task.
|
||||||
|
|||||||
@ -47,8 +47,8 @@ abstract class CommonObject
|
|||||||
|
|
||||||
public $array_options=array();
|
public $array_options=array();
|
||||||
|
|
||||||
public $linkedObjectsIds;
|
public $linkedObjectsIds; // Loaded by ->fetchObjectLinked
|
||||||
public $linkedObjects;
|
public $linkedObjects; // Loaded by ->fetchObjectLinked
|
||||||
|
|
||||||
// No constructor as it is an abstract class
|
// No constructor as it is an abstract class
|
||||||
|
|
||||||
@ -1718,7 +1718,7 @@ abstract class CommonObject
|
|||||||
* @param string $sourcetype Object source type
|
* @param string $sourcetype Object source type
|
||||||
* @param int $targetid Object target id
|
* @param int $targetid Object target id
|
||||||
* @param string $targettype Object target type
|
* @param string $targettype Object target type
|
||||||
* @param string $clause OR, AND clause
|
* @param string $clause 'OR' or 'AND' clause used when both source id and target id are provided
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function fetchObjectLinked($sourceid='',$sourcetype='',$targetid='',$targettype='',$clause='OR')
|
function fetchObjectLinked($sourceid='',$sourcetype='',$targetid='',$targettype='',$clause='OR')
|
||||||
@ -2392,7 +2392,8 @@ abstract class CommonObject
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function to check if an object is used by others
|
* Function to check if an object is used by others.
|
||||||
|
* Check is done into this->childtables. There is no check into llx_element_element.
|
||||||
*
|
*
|
||||||
* @param int $id Id of object
|
* @param int $id Id of object
|
||||||
* @return int <0 if KO, 0 if not used, >0 if already used
|
* @return int <0 if KO, 0 if not used, >0 if already used
|
||||||
|
|||||||
@ -1055,7 +1055,7 @@ class FormOther
|
|||||||
$emptybox->showBox(array(),array());
|
$emptybox->showBox(array(),array());
|
||||||
}
|
}
|
||||||
print "</div>\n";
|
print "</div>\n";
|
||||||
print "<!-- End box container -->\n";
|
print "<!-- End box left container -->\n";
|
||||||
|
|
||||||
print '</div><div class="fichehalfright"><div class="ficheaddleft">';
|
print '</div><div class="fichehalfright"><div class="ficheaddleft">';
|
||||||
|
|
||||||
@ -1086,7 +1086,7 @@ class FormOther
|
|||||||
$emptybox->showBox(array(),array());
|
$emptybox->showBox(array(),array());
|
||||||
}
|
}
|
||||||
print "</div>\n";
|
print "</div>\n";
|
||||||
print "<!-- End box container -->\n";
|
print "<!-- End box right container -->\n";
|
||||||
|
|
||||||
print '</div></div>';
|
print '</div></div>';
|
||||||
print "\n";
|
print "\n";
|
||||||
|
|||||||
@ -1537,6 +1537,7 @@ function dolGetElementUrl($objectid,$objecttype,$withpicto=0,$option='')
|
|||||||
/**
|
/**
|
||||||
* Clean corrupted tree (orphelins linked to a not existing parent), record linked to themself and child-parent loop
|
* Clean corrupted tree (orphelins linked to a not existing parent), record linked to themself and child-parent loop
|
||||||
*
|
*
|
||||||
|
* @param DoliDB $db Database handler
|
||||||
* @param string $tabletocleantree Table to clean
|
* @param string $tabletocleantree Table to clean
|
||||||
* @param string $fieldfkparent Field name that contains id of parent
|
* @param string $fieldfkparent Field name that contains id of parent
|
||||||
* @return int Nb of records fixed/deleted
|
* @return int Nb of records fixed/deleted
|
||||||
|
|||||||
@ -780,9 +780,11 @@ class pdf_typhon extends ModelePDFDeliveryOrder
|
|||||||
|
|
||||||
// Client destinataire
|
// Client destinataire
|
||||||
$posy=42;
|
$posy=42;
|
||||||
|
$posx=102;
|
||||||
|
if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->marge_gauche;
|
||||||
$pdf->SetTextColor(0,0,0);
|
$pdf->SetTextColor(0,0,0);
|
||||||
$pdf->SetFont('','', $default_font_size - 2);
|
$pdf->SetFont('','', $default_font_size - 2);
|
||||||
$pdf->SetXY(102,$posy-5);
|
$pdf->SetXY($posx,$posy-5);
|
||||||
$pdf->MultiCell(80,5, $outputlangs->transnoentities("DeliveryAddress").":", 0, 'L');
|
$pdf->MultiCell(80,5, $outputlangs->transnoentities("DeliveryAddress").":", 0, 'L');
|
||||||
|
|
||||||
// If SHIPPING contact defined on order, we use it
|
// If SHIPPING contact defined on order, we use it
|
||||||
@ -814,7 +816,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder
|
|||||||
if ($this->page_largeur < 210) $widthrecbox=84; // To work with US executive format
|
if ($this->page_largeur < 210) $widthrecbox=84; // To work with US executive format
|
||||||
$posy=42;
|
$posy=42;
|
||||||
$posx=$this->page_largeur-$this->marge_droite-$widthrecbox;
|
$posx=$this->page_largeur-$this->marge_droite-$widthrecbox;
|
||||||
//if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->marge_gauche;
|
if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->marge_gauche;
|
||||||
|
|
||||||
// Show recipient frame
|
// Show recipient frame
|
||||||
$pdf->SetTextColor(0,0,0);
|
$pdf->SetTextColor(0,0,0);
|
||||||
|
|||||||
@ -882,9 +882,10 @@ class Expedition extends CommonObject
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Delete shipment
|
* Delete shipment.
|
||||||
|
* Warning, do not delete a shipment if a delivery is linked to (with table llx_element_element)
|
||||||
*
|
*
|
||||||
* @return int >0 if OK otherwise if KO
|
* @return int >0 if OK, 0 if deletion done but failed to delete files, <0 if KO
|
||||||
*/
|
*/
|
||||||
function delete()
|
function delete()
|
||||||
{
|
{
|
||||||
@ -893,6 +894,14 @@ class Expedition extends CommonObject
|
|||||||
|
|
||||||
$error=0;
|
$error=0;
|
||||||
|
|
||||||
|
// Add a protection to refuse deleting if shipment has at least one delivery
|
||||||
|
$this->fetchObjectLinked($this->id, 'shipping', 0, 'delivery'); // Get deliveries linked to this shipment
|
||||||
|
if (count($this->linkedObjectsIds) > 0)
|
||||||
|
{
|
||||||
|
$this->error='ErrorThereIsSomeDeliveries';
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
$this->db->begin();
|
$this->db->begin();
|
||||||
|
|
||||||
if ($conf->productbatch->enabled) {
|
if ($conf->productbatch->enabled) {
|
||||||
@ -942,7 +951,7 @@ class Expedition extends CommonObject
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(! $error)
|
if (! $error)
|
||||||
{
|
{
|
||||||
$sql = "DELETE FROM ".MAIN_DB_PREFIX."expeditiondet";
|
$sql = "DELETE FROM ".MAIN_DB_PREFIX."expeditiondet";
|
||||||
$sql.= " WHERE fk_expedition = ".$this->id;
|
$sql.= " WHERE fk_expedition = ".$this->id;
|
||||||
@ -960,31 +969,6 @@ class Expedition extends CommonObject
|
|||||||
|
|
||||||
if ($this->db->query($sql))
|
if ($this->db->query($sql))
|
||||||
{
|
{
|
||||||
$this->db->commit();
|
|
||||||
|
|
||||||
// On efface le repertoire de pdf provisoire
|
|
||||||
$ref = dol_sanitizeFileName($this->ref);
|
|
||||||
if (! empty($conf->expedition->dir_output))
|
|
||||||
{
|
|
||||||
$dir = $conf->expedition->dir_output . '/sending/' . $ref ;
|
|
||||||
$file = $dir . '/' . $ref . '.pdf';
|
|
||||||
if (file_exists($file))
|
|
||||||
{
|
|
||||||
if (! dol_delete_file($file))
|
|
||||||
{
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (file_exists($dir))
|
|
||||||
{
|
|
||||||
if (!dol_delete_dir($dir))
|
|
||||||
{
|
|
||||||
$this->error=$langs->trans("ErrorCanNotDeleteDir",$dir);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Call triggers
|
// Call triggers
|
||||||
include_once DOL_DOCUMENT_ROOT.'/core/class/interfaces.class.php';
|
include_once DOL_DOCUMENT_ROOT.'/core/class/interfaces.class.php';
|
||||||
$interface=new Interfaces($this->db);
|
$interface=new Interfaces($this->db);
|
||||||
@ -992,7 +976,40 @@ class Expedition extends CommonObject
|
|||||||
if ($result < 0) { $error++; $this->errors=$interface->errors; }
|
if ($result < 0) { $error++; $this->errors=$interface->errors; }
|
||||||
// End call triggers
|
// End call triggers
|
||||||
|
|
||||||
return 1;
|
if (! $error)
|
||||||
|
{
|
||||||
|
$this->db->commit();
|
||||||
|
|
||||||
|
// We delete PDFs
|
||||||
|
$ref = dol_sanitizeFileName($this->ref);
|
||||||
|
if (! empty($conf->expedition->dir_output))
|
||||||
|
{
|
||||||
|
$dir = $conf->expedition->dir_output . '/sending/' . $ref ;
|
||||||
|
$file = $dir . '/' . $ref . '.pdf';
|
||||||
|
if (file_exists($file))
|
||||||
|
{
|
||||||
|
if (! dol_delete_file($file))
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (file_exists($dir))
|
||||||
|
{
|
||||||
|
if (!dol_delete_dir($dir))
|
||||||
|
{
|
||||||
|
$this->error=$langs->trans("ErrorCanNotDeleteDir",$dir);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$this->db->rollback();
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@ -221,7 +221,7 @@ if ($action == 'add')
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Build a receiving receipt
|
* Build a receiving receipt
|
||||||
*/
|
*/
|
||||||
else if ($action == 'create_delivery' && $conf->livraison_bon->enabled && $user->rights->expedition->livraison->creer)
|
else if ($action == 'create_delivery' && $conf->livraison_bon->enabled && $user->rights->expedition->livraison->creer)
|
||||||
{
|
{
|
||||||
$result = $object->create_delivery($user);
|
$result = $object->create_delivery($user);
|
||||||
@ -273,8 +273,9 @@ else if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->expe
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$mesg = $object->error;
|
$langs->load("errors");
|
||||||
|
setEventMessage($langs->trans($object->error),'errors');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -824,7 +824,7 @@ if ($step == 4 && $datatoimport)
|
|||||||
}
|
}
|
||||||
|
|
||||||
print "</div>\n";
|
print "</div>\n";
|
||||||
print "<!-- End box container -->\n";
|
print "<!-- End box left container -->\n";
|
||||||
|
|
||||||
|
|
||||||
print '</td><td width="50%">';
|
print '</td><td width="50%">';
|
||||||
|
|||||||
@ -112,6 +112,7 @@ UPDATE llx_product p SET p.stock= (SELECT SUM(ps.reel) FROM llx_product_stock ps
|
|||||||
-- ALTER TABLE llx_product_fournisseur_price DROP COLUMN fk_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;
|
ALTER TABLE llx_product_fournisseur_price DROP FOREIGN KEY fk_product_fournisseur;
|
||||||
|
|
||||||
|
|
||||||
-- Fix: deprecated tag to new one
|
-- Fix: deprecated tag to new one
|
||||||
update llx_opensurvey_sondage set format = 'D' where format = 'D+';
|
update llx_opensurvey_sondage set format = 'D' where format = 'D+';
|
||||||
update llx_opensurvey_sondage set format = 'A' where format = 'A+';
|
update llx_opensurvey_sondage set format = 'A' where format = 'A+';
|
||||||
@ -143,4 +144,3 @@ drop table tmp_societe_double;
|
|||||||
|
|
||||||
|
|
||||||
UPDATE llx_projet_task SET fk_task_parent = 0 WHERE fk_task_parent = rowid
|
UPDATE llx_projet_task SET fk_task_parent = 0 WHERE fk_task_parent = rowid
|
||||||
|
|
||||||
|
|||||||
@ -313,7 +313,6 @@ EditDeliveryAddress=Modificar adreça d'enviament
|
|||||||
ThisUserIsNot=Aquest usuari no és ni un client potencial, ni un client, ni un proveïdor
|
ThisUserIsNot=Aquest usuari no és ni un client potencial, ni un client, ni un proveïdor
|
||||||
VATIntraCheck=Verificar
|
VATIntraCheck=Verificar
|
||||||
VATIntraCheckDesc=El link <b>%s</b> permet consultar al servei europeu de control de números d'IVA intracomunitari. Es requereix accés a internet per a que el servei funcioni
|
VATIntraCheckDesc=El link <b>%s</b> permet consultar al servei europeu de control de números d'IVA intracomunitari. Es requereix accés a internet per a que el servei funcioni
|
||||||
VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/lang.do?fromWhichPage=vieshome&selectedLanguage=ES
|
|
||||||
VATIntraCheckableOnEUSite=Verificar a la web de la Comissió Europea
|
VATIntraCheckableOnEUSite=Verificar a la web de la Comissió Europea
|
||||||
VATIntraManualCheck=Podeu també fer una verificació manual a la web europea <a href="%s" target="_blank">%s</a>
|
VATIntraManualCheck=Podeu també fer una verificació manual a la web europea <a href="%s" target="_blank">%s</a>
|
||||||
ErrorVATCheckMS_UNAVAILABLE=Comprovació impossible. El servei de comprovació no és prestat pel país membre (%s).
|
ErrorVATCheckMS_UNAVAILABLE=Comprovació impossible. El servei de comprovació no és prestat pel país membre (%s).
|
||||||
|
|||||||
@ -135,6 +135,8 @@ ErrorWarehouseMustDiffers=Source and target warehouses must differs
|
|||||||
ErrorBadFormat=Bad format!
|
ErrorBadFormat=Bad format!
|
||||||
ErrorPaymentDateLowerThanInvoiceDate=Payment date (%s) cant' be before invoice date (%s) for invoice %s.
|
ErrorPaymentDateLowerThanInvoiceDate=Payment date (%s) cant' be before invoice date (%s) for invoice %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.
|
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.
|
||||||
|
|
||||||
# Warnings
|
# Warnings
|
||||||
WarningMandatorySetupNotComplete=Mandatory setup parameters are not yet defined
|
WarningMandatorySetupNotComplete=Mandatory setup parameters are not yet defined
|
||||||
WarningSafeModeOnCheckExecDir=Warning, PHP option <b>safe_mode</b> is on so command must be stored inside a directory declared by php parameter <b>safe_mode_exec_dir</b>.
|
WarningSafeModeOnCheckExecDir=Warning, PHP option <b>safe_mode</b> is on so command must be stored inside a directory declared by php parameter <b>safe_mode_exec_dir</b>.
|
||||||
|
|||||||
@ -313,7 +313,6 @@ EditDeliveryAddress=Modificar dirección de envío
|
|||||||
ThisUserIsNot=Este usuario no es ni un cliente potencial, ni un cliente, ni un proveedor
|
ThisUserIsNot=Este usuario no es ni un cliente potencial, ni un cliente, ni un proveedor
|
||||||
VATIntraCheck=Verificar
|
VATIntraCheck=Verificar
|
||||||
VATIntraCheckDesc=El link <b>%s</b> permite consultar al servicio europeo de control de números de IVA intracomunitario. Se requiere acceso a internet para que el servicio funcione
|
VATIntraCheckDesc=El link <b>%s</b> permite consultar al servicio europeo de control de números de IVA intracomunitario. Se requiere acceso a internet para que el servicio funcione
|
||||||
VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/lang.do?fromWhichPage=vieshome&selectedLanguage=ES
|
|
||||||
VATIntraCheckableOnEUSite=Verificar en la web de la Comisión Europea
|
VATIntraCheckableOnEUSite=Verificar en la web de la Comisión Europea
|
||||||
VATIntraManualCheck=Puede también realizar una verificación manual en la web europea <a href="%s" target="_blank">%s</a>
|
VATIntraManualCheck=Puede también realizar una verificación manual en la web europea <a href="%s" target="_blank">%s</a>
|
||||||
ErrorVATCheckMS_UNAVAILABLE=Comprobación imposible. El servicio de comprobación no es prestado por el país país miembro (%s).
|
ErrorVATCheckMS_UNAVAILABLE=Comprobación imposible. El servicio de comprobación no es prestado por el país país miembro (%s).
|
||||||
|
|||||||
@ -18,10 +18,10 @@ ErrorFailToCreateFile=Echec de la création du fichier '<b>%s</b>'.
|
|||||||
ErrorFailToRenameDir=Echec du renommage du répertoire '<b>%s</b>' en '<b>%s</b>'.
|
ErrorFailToRenameDir=Echec du renommage du répertoire '<b>%s</b>' en '<b>%s</b>'.
|
||||||
ErrorFailToCreateDir=Echec de création du répertoire '<b>%s</b>'.
|
ErrorFailToCreateDir=Echec de création du répertoire '<b>%s</b>'.
|
||||||
ErrorFailToDeleteDir=Echec de la suppression du répertoire '<b>%s</b>'.
|
ErrorFailToDeleteDir=Echec de la suppression du répertoire '<b>%s</b>'.
|
||||||
ErrorFailedToDeleteJoinedFiles=Impossible de supprimer l'entité car il existe des pièces jointes. Supprimer d'abord les pièces jointes.
|
ErrorFailedToDeleteJoinedFiles=Impossible de supprimer l'entité car il existe des pièces jointes. Supprimez d'abord les pièces jointes.
|
||||||
ErrorThisContactIsAlreadyDefinedAsThisType=Ce contact est déjà défini comme contact pour ce type.
|
ErrorThisContactIsAlreadyDefinedAsThisType=Ce contact est déjà défini comme contact pour ce type.
|
||||||
ErrorCashAccountAcceptsOnlyCashMoney=Ce compte bancaire est de type caisse et n'accepte que les mode de règlement de type <b>espèce</b>.
|
ErrorCashAccountAcceptsOnlyCashMoney=Ce compte bancaire est de type caisse et n'accepte que le mode de règlement de type <b>espèce</b>.
|
||||||
ErrorFromToAccountsMustDiffers=Le compte source et destination doivent être différents.
|
ErrorFromToAccountsMustDiffers=Les comptes source et destination doivent être différents.
|
||||||
ErrorBadThirdPartyName=Nom de tiers incorrect
|
ErrorBadThirdPartyName=Nom de tiers incorrect
|
||||||
ErrorProdIdIsMandatory=Le %s est obligatoire
|
ErrorProdIdIsMandatory=Le %s est obligatoire
|
||||||
ErrorBadCustomerCodeSyntax=La syntaxe du code client est incorrecte
|
ErrorBadCustomerCodeSyntax=La syntaxe du code client est incorrecte
|
||||||
@ -44,9 +44,9 @@ ErrorFailedToWriteInDir=Impossible d'écrire dans le répertoire %s
|
|||||||
ErrorFoundBadEmailInFile=Syntaxe de mail incorrecte trouvée pour %s lignes dans le fichier (exemple ligne %s avec email=%s)
|
ErrorFoundBadEmailInFile=Syntaxe de mail incorrecte trouvée pour %s lignes dans le fichier (exemple ligne %s avec email=%s)
|
||||||
ErrorUserCannotBeDelete=L'utilisateur ne peut pas être supprimé. Peut-être est-il associé à des éléments de Dolibarr.
|
ErrorUserCannotBeDelete=L'utilisateur ne peut pas être supprimé. Peut-être est-il associé à des éléments de Dolibarr.
|
||||||
ErrorFieldsRequired=Des champs obligatoires n'ont pas été renseignés
|
ErrorFieldsRequired=Des champs obligatoires n'ont pas été renseignés
|
||||||
ErrorFailedToCreateDir=Echec à la création d'un répertoire. Vérifiez que le user du serveur Web a bien les droits d'écriture dans les répertoires documents de Dolibarr. Si le paramètre <b>safe_mode</b> a été activé sur ce PHP, vérifier que les fichiers php dolibarr appartiennent à l'utilisateur du serveur Web.
|
ErrorFailedToCreateDir=Echec à la création d'un répertoire. Vérifiez que le user du serveur Web a bien les droits d'écriture dans les répertoires documents de Dolibarr. Si le paramètre <b>safe_mode</b> a été activé sur ce PHP, vérifiez que les fichiers php dolibarr appartiennent à l'utilisateur du serveur Web.
|
||||||
ErrorNoMailDefinedForThisUser=EMail non défini pour cet utilisateur
|
ErrorNoMailDefinedForThisUser=EMail non défini pour cet utilisateur
|
||||||
ErrorFeatureNeedJavascript=Cette fonctionnalité a besoin de javascript activé pour fonctionner. Modifier dans configuration - affichage.
|
ErrorFeatureNeedJavascript=Cette fonctionnalité a besoin de javascript activé pour fonctionner. Modifiez dans configuration - affichage.
|
||||||
ErrorTopMenuMustHaveAParentWithId0=Un menu de type 'Top' ne peut avoir de menu père. Mettre 0 dans l'id père ou choisir un menu de type 'Left'.
|
ErrorTopMenuMustHaveAParentWithId0=Un menu de type 'Top' ne peut avoir de menu père. Mettre 0 dans l'id père ou choisir un menu de type 'Left'.
|
||||||
ErrorLeftMenuMustHaveAParentId=Un menu de type 'Left' doit avoir un id de père.
|
ErrorLeftMenuMustHaveAParentId=Un menu de type 'Left' doit avoir un id de père.
|
||||||
ErrorFileNotFound=Fichier <b>%s</b> introuvable (Mauvais chemin, permissions incorrectes ou accès interdit par le paramètre PHP openbasedir ou safe_mode)
|
ErrorFileNotFound=Fichier <b>%s</b> introuvable (Mauvais chemin, permissions incorrectes ou accès interdit par le paramètre PHP openbasedir ou safe_mode)
|
||||||
@ -60,8 +60,8 @@ ErrorUploadBlockedByAddon=Upload bloqué par un plugin PHP/Apache.
|
|||||||
ErrorFileSizeTooLarge=La taille du fichier est trop grande.
|
ErrorFileSizeTooLarge=La taille du fichier est trop grande.
|
||||||
ErrorSizeTooLongForIntType=Longueur de champ trop longue pour le type int (%s chiffres maximum)
|
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)
|
ErrorSizeTooLongForVarcharType=Longueur de champ trop longue pour le type chaine (%s caractères maximum)
|
||||||
ErrorNoValueForSelectType=Les valeurs de la liste de selection doivent être renseignées
|
ErrorNoValueForSelectType=Les valeurs de la liste de sélection doivent être renseignées
|
||||||
ErrorNoValueForCheckBoxType=Les valeurs de la liste de case a cochées doivent être renseignées
|
ErrorNoValueForCheckBoxType=Les valeurs de la liste de cases à cocher doivent être renseignées
|
||||||
ErrorNoValueForRadioType=Les valeurs de la liste d'options 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 : <b>%s</b>, mais doivent en avoir au moins une: clef,valeur
|
ErrorBadFormatValueList=Les valeurs de la liste ne peuvent pas contenir plus d'une virgule : <b>%s</b>, mais doivent en avoir au moins une: clef,valeur
|
||||||
ErrorFieldCanNotContainSpecialCharacters=Le champ <b>%s</b> ne peut contenir de caractères spéciaux.
|
ErrorFieldCanNotContainSpecialCharacters=Le champ <b>%s</b> ne peut contenir de caractères spéciaux.
|
||||||
@ -69,7 +69,7 @@ ErrorFieldCanNotContainSpecialNorUpperCharacters=Le champ <b>%s</b> ne doit pas
|
|||||||
ErrorNoAccountancyModuleLoaded=Aucun module de comptabilité activé
|
ErrorNoAccountancyModuleLoaded=Aucun module de comptabilité activé
|
||||||
ErrorExportDuplicateProfil=Ce nom de profil existe déjà pour ce lot d'export.
|
ErrorExportDuplicateProfil=Ce nom de profil existe déjà pour ce lot d'export.
|
||||||
ErrorLDAPSetupNotComplete=Le matching Dolibarr-LDAP est incomplet.
|
ErrorLDAPSetupNotComplete=Le matching Dolibarr-LDAP est incomplet.
|
||||||
ErrorLDAPMakeManualTest=Un fichier .ldif a été généré dans le répertoire %s. Essayez de charger ce fichier en manuel depuis la ligne de commande pour plus de détail sur l'erreur.
|
ErrorLDAPMakeManualTest=Un fichier .ldif a été généré dans le répertoire %s. Essayez de charger ce fichier manuellement depuis la ligne de commande pour plus de détail sur l'erreur.
|
||||||
ErrorCantSaveADoneUserWithZeroPercentage=Impossible de sauver une action à l'état non commencé avec un utilisateur défini comme ayant fait l'action.
|
ErrorCantSaveADoneUserWithZeroPercentage=Impossible de sauver une action à l'état non commencé avec un utilisateur défini comme ayant fait l'action.
|
||||||
ErrorRefAlreadyExists=La référence utilisée pour la création existe déjà
|
ErrorRefAlreadyExists=La référence utilisée pour la création existe déjà
|
||||||
ErrorPleaseTypeBankTransactionReportName=Veuillez saisir le nom de relevé bancaire sur lequel l'écriture est constatée (Format AAAAMM de préférence ou AAAAMMJJ)
|
ErrorPleaseTypeBankTransactionReportName=Veuillez saisir le nom de relevé bancaire sur lequel l'écriture est constatée (Format AAAAMM de préférence ou AAAAMMJJ)
|
||||||
@ -84,7 +84,7 @@ ErrorFieldRefNotIn=Mauvaise valeur pour le champ numéro <b>%s</b> (la valeur '<
|
|||||||
ErrorsOnXLines=Erreurs sur <b>%s</b> enregistrement(s) source
|
ErrorsOnXLines=Erreurs sur <b>%s</b> enregistrement(s) source
|
||||||
ErrorFileIsInfectedWithAVirus=L'antivirus n'a pas pu valider ce fichier (il est probablement infecté par un virus) !
|
ErrorFileIsInfectedWithAVirus=L'antivirus n'a pas pu valider ce fichier (il est probablement infecté par un virus) !
|
||||||
ErrorSpecialCharNotAllowedForField=Les caractères spéciaux ne sont pas admis pour le champ "%s"
|
ErrorSpecialCharNotAllowedForField=Les caractères spéciaux ne sont pas admis pour le champ "%s"
|
||||||
ErrorDatabaseParameterWrong=Le paramètre de configuration de la base de donnée '<b>%s</b>' a une valeur non compatible pour une utilisation de Dolibarr (doit avoir la valeur '<b>%s</b>').
|
ErrorDatabaseParameterWrong=Le paramètre de configuration de la base de données '<b>%s</b>' a une valeur non compatible pour une utilisation de Dolibarr (doit avoir la valeur '<b>%s</b>').
|
||||||
ErrorNumRefModel=Une référence existe en base (%s) et est incompatible avec cette numérotation. Supprimez la ligne ou renommez la référence pour activer ce module.
|
ErrorNumRefModel=Une référence existe en base (%s) et est incompatible avec cette numérotation. Supprimez la ligne ou renommez la référence pour activer ce module.
|
||||||
ErrorQtyTooLowForThisSupplier=Quantité insuffisante pour ce fournisseur ou aucun tarif défini sur ce produit pour ce fournisseur
|
ErrorQtyTooLowForThisSupplier=Quantité insuffisante pour ce fournisseur ou aucun tarif défini sur ce produit pour ce fournisseur
|
||||||
ErrorModuleSetupNotComplete=La configuration du module semble incomplète. Aller dans l'espace Configuration - Modules pour corriger.
|
ErrorModuleSetupNotComplete=La configuration du module semble incomplète. Aller dans l'espace Configuration - Modules pour corriger.
|
||||||
@ -96,7 +96,7 @@ ErrorProductWithRefNotExist=La référence produit '<i>%s</i>' n'existe pas
|
|||||||
ErrorDeleteNotPossibleLineIsConsolidated=Suppression impossible car l'enregistrement porte sur au moins une transaction bancaire rapprochée
|
ErrorDeleteNotPossibleLineIsConsolidated=Suppression impossible car l'enregistrement porte sur au moins une transaction bancaire rapprochée
|
||||||
ErrorProdIdAlreadyExist=%s est attribué à un autre tiers
|
ErrorProdIdAlreadyExist=%s est attribué à un autre tiers
|
||||||
ErrorFailedToSendPassword=Échec de l'envoi du mot de passe
|
ErrorFailedToSendPassword=Échec de l'envoi du mot de passe
|
||||||
ErrorFailedToLoadRSSFile=Echec de la récupération du flux RSS. Ajouter la constante MAIN_SIMPLEXMLLOAD_DEBUG si le message d'erreur n'est pas assez explicite.
|
ErrorFailedToLoadRSSFile=Echec de la récupération du flux RSS. Ajoutez la constante MAIN_SIMPLEXMLLOAD_DEBUG si le message d'erreur n'est pas assez explicite.
|
||||||
ErrorPasswordDiffers=Les mots de passe ne sont pas identiques, veuillez les saisir à nouveau
|
ErrorPasswordDiffers=Les mots de passe ne sont pas identiques, veuillez les saisir à nouveau
|
||||||
ErrorForbidden=Accès non autorisé.<br>Vous essayez d'accéder à une page, zone ou fonction sans être au sein d'une session authentifiée ou qui n'est pas autorisée pour votre compte utilisateur.
|
ErrorForbidden=Accès non autorisé.<br>Vous essayez d'accéder à une page, zone ou fonction sans être au sein d'une session authentifiée ou qui n'est pas autorisée pour votre compte utilisateur.
|
||||||
ErrorForbidden2=Les permissions pour ce login peuvent être attribuées par l'administrateur Dolibarr via le menu %s -> %s.
|
ErrorForbidden2=Les permissions pour ce login peuvent être attribuées par l'administrateur Dolibarr via le menu %s -> %s.
|
||||||
@ -106,16 +106,16 @@ ErrorRecordAlreadyExists=Enregistrement déjà existant
|
|||||||
ErrorCantReadFile=Échec de lecture du fichier '%s'
|
ErrorCantReadFile=Échec de lecture du fichier '%s'
|
||||||
ErrorCantReadDir=Échec de lecture du répertoire '%s'
|
ErrorCantReadDir=Échec de lecture du répertoire '%s'
|
||||||
ErrorFailedToFindEntity=Échec de lecture de l'environnement '%s'
|
ErrorFailedToFindEntity=Échec de lecture de l'environnement '%s'
|
||||||
ErrorBadLoginPassword=Identifiants login ou mot de passe incorrects
|
ErrorBadLoginPassword=Identifiants login ou mot de passe incorrect
|
||||||
ErrorLoginDisabled=Votre compte est désactivé
|
ErrorLoginDisabled=Votre compte est désactivé
|
||||||
ErrorFailedToRunExternalCommand=Échec de l'exécution de la commande externe. Vérifiez qu'elle est disponible et exécutable par votre serveur PHP. Si le <b>Safe Mode</b> PHP est actif, vérifiez que la commande se trouve dans un répertoire définie dans le paramètre <b>safe_mode_exec_dir</b>.
|
ErrorFailedToRunExternalCommand=Échec de l'exécution de la commande externe. Vérifiez qu'elle est disponible et exécutable par votre serveur PHP. Si le <b>Safe Mode</b> PHP est actif, vérifiez que la commande se trouve dans un répertoire défini dans le paramètre <b>safe_mode_exec_dir</b>.
|
||||||
ErrorFailedToChangePassword=Échec de modification du mot de passe
|
ErrorFailedToChangePassword=Échec de modification du mot de passe
|
||||||
ErrorLoginDoesNotExists=Le compte utilisateur de login <b>%s</b> n'a pu être trouvé.
|
ErrorLoginDoesNotExists=Le compte utilisateur de login <b>%s</b> n'a pu être trouvé.
|
||||||
ErrorLoginHasNoEmail=Cet utilisateur n'a pas d'email. Impossible de continuer.
|
ErrorLoginHasNoEmail=Cet utilisateur n'a pas d'email. Impossible de continuer.
|
||||||
ErrorBadValueForCode=Mauvaise valeur saisie pour le code. Réessayez avec une nouvelle valeur...
|
ErrorBadValueForCode=Mauvaise valeur saisie pour le code. Réessayez avec une nouvelle valeur...
|
||||||
ErrorBothFieldCantBeNegative=Les champs %s et %s ne peuvent être tous deux négatifs
|
ErrorBothFieldCantBeNegative=Les champs %s et %s ne peuvent être tous deux négatifs
|
||||||
ErrorWebServerUserHasNotPermission=Le compte d'execution du serveur web <b>%s</b> n'a pas les permissions pour cela
|
ErrorWebServerUserHasNotPermission=Le compte d'exécution du serveur web <b>%s</b> n'a pas les permissions pour cela
|
||||||
ErrorNoActivatedBarcode=Aucun type de code bar activé
|
ErrorNoActivatedBarcode=Aucun type de code-barres activé
|
||||||
ErrUnzipFails=Impossible de décompresser le fichier %s avec ZipArchive
|
ErrUnzipFails=Impossible de décompresser le fichier %s avec ZipArchive
|
||||||
ErrNoZipEngine=Pas de moteur pour décompresser le fichier %s dans ce PHP
|
ErrNoZipEngine=Pas de moteur pour décompresser le fichier %s dans ce PHP
|
||||||
ErrorFileMustBeADolibarrPackage=Le fichier doit être un package Dolibarr
|
ErrorFileMustBeADolibarrPackage=Le fichier doit être un package Dolibarr
|
||||||
@ -124,11 +124,11 @@ ErrorPhpCurlNotInstalled=L'extension PHP CURL n'est pas installée, ceci est ind
|
|||||||
ErrorFailedToAddToMailmanList=Echec de l'ajout de %s à la liste Mailman %s ou base SPIP
|
ErrorFailedToAddToMailmanList=Echec de l'ajout de %s à la liste Mailman %s ou base SPIP
|
||||||
ErrorFailedToRemoveToMailmanList=Echec de la suppression de %s de la liste Mailman %s ou base SPIP
|
ErrorFailedToRemoveToMailmanList=Echec de la suppression de %s de la liste Mailman %s ou base SPIP
|
||||||
ErrorNewValueCantMatchOldValue=La nouvelle valeur ne peut être égale à l'ancienne
|
ErrorNewValueCantMatchOldValue=La nouvelle valeur ne peut être égale à l'ancienne
|
||||||
ErrorFailedToValidatePasswordReset=Echec de la réinitialisation du mot de passe. Il est possible que ce lien ait déjà été utilisé (l'utilisation de ce lien ne fonctionne qu'une fois). Si ce n'est pas le cas, essayer de recommencer le processus de réinit de mot de passe depuis le début.
|
ErrorFailedToValidatePasswordReset=Echec de la réinitialisation du mot de passe. Il est possible que ce lien ait déjà été utilisé (l'utilisation de ce lien ne fonctionne qu'une fois). Si ce n'est pas le cas, essayer de recommencer le processus de réinitialisation de mot de passe depuis le début.
|
||||||
ErrorToConnectToMysqlCheckInstance=Echec de la connection au serveur de base de donnée. Vérifier que Mysql est bien lancé (dans la plupart des cas, vous pouvez le lancer depuis la ligne de commande par la commande 'sudo /etc/init.d/mysql start').
|
ErrorToConnectToMysqlCheckInstance=Echec de la connection au serveur de base de données. Vérifiez que Mysql est bien lancé (dans la plupart des cas, vous pouvez le lancer depuis la ligne de commande par la commande 'sudo /etc/init.d/mysql start').
|
||||||
ErrorFailedToAddContact=Echec à l'ajout du contact
|
ErrorFailedToAddContact=Echec à l'ajout du contact
|
||||||
ErrorDateMustBeBeforeToday=La date ne peut pas être supérieure à aujourd'hui
|
ErrorDateMustBeBeforeToday=La date ne peut pas être supérieure à aujourd'hui
|
||||||
ErrorPaymentModeDefinedToWithoutSetup=Un mode de paiement a été défini de type %s mais la configuration du module Facture n'a pas été complété pour définir les informations afficher pour ce mode de paiment.
|
ErrorPaymentModeDefinedToWithoutSetup=Un mode de paiement a été défini de type %s mais la configuration du module Facture n'a pas été complétée pour définir les informations affichées pour ce mode de paiment.
|
||||||
ErrorPHPNeedModule=Erreur, votre PHP doit avoir le module <b>%s</b> installé pour utiliser cette fonctionnalité.
|
ErrorPHPNeedModule=Erreur, votre PHP doit avoir le module <b>%s</b> installé pour utiliser cette fonctionnalité.
|
||||||
ErrorOpenIDSetupNotComplete=Vous avez configuré Dolibarr pour accepter l'authentication OpenID, mais l'URL du service OpenID n'est pas défini dans la constante %s
|
ErrorOpenIDSetupNotComplete=Vous avez configuré Dolibarr pour accepter l'authentication OpenID, mais l'URL du service OpenID n'est pas défini dans la constante %s
|
||||||
ErrorWarehouseMustDiffers=Les entrepôts source et destination doivent être différents
|
ErrorWarehouseMustDiffers=Les entrepôts source et destination doivent être différents
|
||||||
|
|||||||
@ -313,7 +313,6 @@ EditDeliveryAddress=Modificar Direcção de Envío
|
|||||||
ThisUserIsNot=Este utilizador nem é um cliente potencial, nem um cliente, nem um fornecedor
|
ThisUserIsNot=Este utilizador nem é um cliente potencial, nem um cliente, nem um fornecedor
|
||||||
VATIntraCheck=Verificar
|
VATIntraCheck=Verificar
|
||||||
VATIntraCheckDesc=o link <b>%s</b> permite consultar à serviço europeu de control de números de IVA intracomunitario. Requer acesso á internet para que o serviço funcione
|
VATIntraCheckDesc=o link <b>%s</b> permite consultar à serviço europeu de control de números de IVA intracomunitario. Requer acesso á internet para que o serviço funcione
|
||||||
VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/lang.do?fromWhichPage=vieshome&selectedLanguage=é
|
|
||||||
VATIntraCheckableOnEUSite=Verificar na web da Comissão Europeia
|
VATIntraCheckableOnEUSite=Verificar na web da Comissão Europeia
|
||||||
VATIntraManualCheck=Pode também realizar uma verificação manual na web europea <a href="%s" target="_blank">%s</a>
|
VATIntraManualCheck=Pode também realizar uma verificação manual na web europea <a href="%s" target="_blank">%s</a>
|
||||||
ErrorVATCheckMS_UNAVAILABLE=Verificação Impossivel. O serviço de verificação não é prestado pelo país membro (%s).
|
ErrorVATCheckMS_UNAVAILABLE=Verificação Impossivel. O serviço de verificação não é prestado pelo país membro (%s).
|
||||||
|
|||||||
@ -1492,7 +1492,7 @@ function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $a
|
|||||||
print '<div style="clear: both;"></div>';
|
print '<div style="clear: both;"></div>';
|
||||||
print "<!-- End top horizontal menu -->\n\n";
|
print "<!-- End top horizontal menu -->\n\n";
|
||||||
|
|
||||||
if (empty($conf->dol_hide_leftmenu) && (empty($conf->use_javascript_ajax) || ! empty($conf->dol_use_jmobile) || empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT))) print '<div id="id-container">';
|
if (empty($conf->dol_hide_leftmenu) && empty($conf->dol_use_jmobile) && empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print '<div id="id-container">';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1523,7 +1523,7 @@ function left_menu($menu_array_before, $helppagename='', $moresearchform='', $me
|
|||||||
$hookmanager->initHooks(array('searchform','leftblock'));
|
$hookmanager->initHooks(array('searchform','leftblock'));
|
||||||
|
|
||||||
if (empty($conf->dol_use_jmobile) && ! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print "\n".'<div class="ui-layout-west"> <!-- Begin left layout -->'."\n";
|
if (empty($conf->dol_use_jmobile) && ! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print "\n".'<div class="ui-layout-west"> <!-- Begin left layout -->'."\n";
|
||||||
else print '<div id="id-left">';
|
else print '<div id="id-left"> <!-- Begin id-left -->';
|
||||||
|
|
||||||
print "\n";
|
print "\n";
|
||||||
|
|
||||||
@ -1701,7 +1701,7 @@ function left_menu($menu_array_before, $helppagename='', $moresearchform='', $me
|
|||||||
print $leftblock;
|
print $leftblock;
|
||||||
|
|
||||||
if (empty($conf->dol_use_jmobile) && ! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print '</div> <!-- End left layout -->'."\n";
|
if (empty($conf->dol_use_jmobile) && ! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print '</div> <!-- End left layout -->'."\n";
|
||||||
else print '</div>'; // End div id="id-left"
|
else print '</div> <!-- end id-left -->'; // End div id="id-left"
|
||||||
}
|
}
|
||||||
|
|
||||||
print "\n";
|
print "\n";
|
||||||
@ -1722,10 +1722,7 @@ function main_area($title='')
|
|||||||
{
|
{
|
||||||
global $conf, $langs;
|
global $conf, $langs;
|
||||||
|
|
||||||
if (empty($conf->dol_use_jmobile) && ! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT))
|
if (empty($conf->dol_use_jmobile) && ! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print '<div id="mainContent"><div class="ui-layout-center"> <!-- begin main layout -->'."\n";
|
||||||
{
|
|
||||||
print '<div id="mainContent"><div class="ui-layout-center"> <!-- begin main layout -->'."\n";
|
|
||||||
}
|
|
||||||
if (empty($conf->dol_hide_leftmenu)) print '<div id="id-right">';
|
if (empty($conf->dol_hide_leftmenu)) print '<div id="id-right">';
|
||||||
|
|
||||||
print "\n";
|
print "\n";
|
||||||
@ -1850,18 +1847,18 @@ if (! function_exists("llxFooter"))
|
|||||||
}
|
}
|
||||||
|
|
||||||
print "\n\n";
|
print "\n\n";
|
||||||
print '</div> <!-- end div class="fiche" -->'."\n";
|
print '</div> <!-- End div class="fiche" -->'."\n";
|
||||||
if (! empty($conf->dol_use_jmobile)) print '</div>'; // end data-role="page"
|
if (! empty($conf->dol_use_jmobile)) print '</div>'; // end data-role="page"
|
||||||
|
|
||||||
if (empty($conf->dol_use_jmobile) && ! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print '</div></div> <!-- end main layout -->'."\n";
|
if (empty($conf->dol_use_jmobile) && ! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print '</div></div> <!-- end main layout -->'."\n";
|
||||||
if (empty($conf->dol_hide_leftmenu)) print '</div>'; // End div id-right
|
if (empty($conf->dol_hide_leftmenu)) print '</div> <!-- End div id-right -->'; // End div id-right
|
||||||
|
|
||||||
print "\n";
|
print "\n";
|
||||||
if ($comment) print '<!-- '.$comment.' -->'."\n";
|
if ($comment) print '<!-- '.$comment.' -->'."\n";
|
||||||
|
|
||||||
printCommonFooter($zone);
|
printCommonFooter($zone);
|
||||||
|
|
||||||
if (empty($conf->dol_hide_leftmenu)) print '</div>'; // End div container
|
if (empty($conf->dol_hide_leftmenu) && empty($conf->dol_use_jmobile) && empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print '</div> <!-- End div id-container -->'."\n"; // End div container
|
||||||
|
|
||||||
print "</body>\n";
|
print "</body>\n";
|
||||||
print "</html>\n";
|
print "</html>\n";
|
||||||
|
|||||||
@ -1008,10 +1008,10 @@ else
|
|||||||
print '<table class="border allwidth">';
|
print '<table class="border allwidth">';
|
||||||
|
|
||||||
// Ref
|
// Ref
|
||||||
print '<tr><td width="20%" class="fieldrequired">'.$langs->trans("Ref").'</td><td colspan="3"><input name="ref" size="20" maxlength="128" value="'.$object->ref.'"></td></tr>';
|
print '<tr><td width="20%" class="fieldrequired">'.$langs->trans("Ref").'</td><td colspan="3"><input name="ref" size="20" maxlength="128" value="'.dol_escape_htmltag($object->ref).'"></td></tr>';
|
||||||
|
|
||||||
// Label
|
// Label
|
||||||
print '<tr><td class="fieldrequired">'.$langs->trans("Label").'</td><td colspan="3"><input name="libelle" size="40" maxlength="255" value="'.$object->libelle.'"></td></tr>';
|
print '<tr><td class="fieldrequired">'.$langs->trans("Label").'</td><td colspan="3"><input name="libelle" size="40" maxlength="255" value="'.dol_escape_htmltag($object->libelle).'"></td></tr>';
|
||||||
|
|
||||||
// Status To sell
|
// Status To sell
|
||||||
print '<tr><td class="fieldrequired">'.$langs->trans("Status").' ('.$langs->trans("Sell").')</td><td colspan="3">';
|
print '<tr><td class="fieldrequired">'.$langs->trans("Status").' ('.$langs->trans("Sell").')</td><td colspan="3">';
|
||||||
|
|||||||
@ -317,8 +317,7 @@ if ($id > 0 || ! empty($ref))
|
|||||||
|
|
||||||
// Task parent
|
// Task parent
|
||||||
print '<tr><td>'.$langs->trans("ChildOfTask").'</td><td>';
|
print '<tr><td>'.$langs->trans("ChildOfTask").'</td><td>';
|
||||||
// print $formother->selectProjectTasks($object->fk_task_parent, $projectstatic->id, 'task_parent', ($user->admin?0:1), 0, 0, 0, $object->id);
|
print $formother->selectProjectTasks($object->fk_task_parent, $projectstatic->id, 'task_parent', ($user->admin?0:1), 0, 0, 0, $object->id);
|
||||||
print $formother->selectProjectTasks($object->fk_task_parent, $projectstatic->id, 'task_parent', ($user->admin?0:1), 0, 0, 0, 0);
|
|
||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
|
|
||||||
// Date start
|
// Date start
|
||||||
|
|||||||
@ -179,7 +179,7 @@ if ($tmpval <= 360) { $colortextbackvmenu='FFF'; }
|
|||||||
else { $colortextbackvmenu='444'; }
|
else { $colortextbackvmenu='444'; }
|
||||||
$tmppart=explode(',',$colorbacktitle1);
|
$tmppart=explode(',',$colorbacktitle1);
|
||||||
$tmpval=(! empty($tmppart[1]) ? $tmppart[1] : '')+(! empty($tmppart[2]) ? $tmppart[2] : '')+(! empty($tmppart[3]) ? $tmppart[3] : '');
|
$tmpval=(! empty($tmppart[1]) ? $tmppart[1] : '')+(! empty($tmppart[2]) ? $tmppart[2] : '')+(! empty($tmppart[3]) ? $tmppart[3] : '');
|
||||||
if ($tmpval <= 360) { $colortexttitle='FFF'; $colorshadowtitle='000'; }
|
if ($tmpval <= 360) { $colortexttitle='FFF'; $colorshadowtitle='888'; }
|
||||||
else { $colortexttitle='444'; $colorshadowtitle='FFF'; }
|
else { $colortexttitle='444'; $colorshadowtitle='FFF'; }
|
||||||
$tmppart=explode(',',$colorbacktabcard1);
|
$tmppart=explode(',',$colorbacktabcard1);
|
||||||
$tmpval=(! empty($tmppart[1]) ? $tmppart[1] : '')+(! empty($tmppart[2]) ? $tmppart[2] : '')+(! empty($tmppart[3]) ? $tmppart[3] : '');
|
$tmpval=(! empty($tmppart[1]) ? $tmppart[1] : '')+(! empty($tmppart[2]) ? $tmppart[2] : '')+(! empty($tmppart[3]) ? $tmppart[3] : '');
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user