Browse Source

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

Laurent Destailleur 2 years ago
parent
commit
4510295031
3 changed files with 57 additions and 41 deletions
  1. 10 0
      htdocs/core/class/notify.class.php
  2. 45 40
      htdocs/langs/fr_FR/errors.lang
  3. 2 1
      qodana.yaml

+ 10 - 0
htdocs/core/class/notify.class.php

@@ -658,6 +658,11 @@ class Notify
 
 						$reshook = $hookmanager->executeHooks('formatNotificationMessage', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
 						if (empty($reshook)) {
+							if (!empty($hookmanager->resArray['files'])) {
+								$filename_list = $hookmanager->resArray['files']['file'];
+								$mimetype_list = $hookmanager->resArray['files']['mimefile'];
+								$mimefilename_list = $hookmanager->resArray['files']['filename'];
+							}
 							if (!empty($hookmanager->resArray['subject'])) {
 								$subject .= $hookmanager->resArray['subject'];
 							}
@@ -901,6 +906,11 @@ class Notify
 					$parameters = array('notifcode'=>$notifcode, 'sendto'=>$sendto, 'replyto'=>$replyto, 'file'=>$filename_list, 'mimefile'=>$mimetype_list, 'filename'=>$mimefilename_list);
 					$reshook = $hookmanager->executeHooks('formatNotificationMessage', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
 					if (empty($reshook)) {
+						if (!empty($hookmanager->resArray['files'])) {
+							$filename_list = $hookmanager->resArray['files']['file'];
+							$mimetype_list = $hookmanager->resArray['files']['mimefile'];
+							$mimefilename_list = $hookmanager->resArray['files']['filename'];
+						}
 						if (!empty($hookmanager->resArray['subject'])) {
 							$subject .= $hookmanager->resArray['subject'];
 						}

+ 45 - 40
htdocs/langs/fr_FR/errors.lang

@@ -14,6 +14,7 @@ ErrorLoginAlreadyExists=L'identifiant %s existe déjà.
 ErrorGroupAlreadyExists=Le groupe %s existe déjà.
 ErrorEmailAlreadyExists=L'e-mail %s existe déjà.
 ErrorRecordNotFound=Enregistrement non trouvé.
+ErrorRecordNotFoundShort=Non trouvé
 ErrorFailToCopyFile=Echec de la copie du fichier '<b>%s</b>' en '<b>%s</b>'.
 ErrorFailToCopyDir=Echec de copie du répertoire '<b>%s</b>' vers '<b>%s</b>'.
 ErrorFailToRenameFile=Echec du renommage du fichier '<b>%s</b>' en '<b>%s</b>'.
@@ -32,28 +33,28 @@ ForbiddenBySetupRules=Interdit par les règles de configuration
 ErrorProdIdIsMandatory=Le %s est obligatoire
 ErrorAccountancyCodeCustomerIsMandatory=Le code comptable du client %s est obligatoire
 ErrorBadCustomerCodeSyntax=La syntaxe du code client est incorrecte
-ErrorBadBarCodeSyntax=Mauvaise syntaxe pour le code barre. Peut être que vous avez défini un mauvais type de code-barres ou que vous avez défini un masque de code à barres pour la numérotation qui ne correspond pas à la valeur scannée.
+ErrorBadBarCodeSyntax=Mauvaise syntaxe pour le code-barres. Peut être que vous avez défini un mauvais type de code-barres ou que vous avez défini un masque de code à barres pour la numérotation qui ne correspond pas à la valeur scannée.
 ErrorCustomerCodeRequired=Code client obligatoire
-ErrorBarCodeRequired=Code-barre requis
+ErrorBarCodeRequired=Code-barres requis
 ErrorCustomerCodeAlreadyUsed=Code client déjà utilisé
-ErrorBarCodeAlreadyUsed=Code-barre déjà utilisé
-ErrorPrefixRequired=Préfix obligatoire
+ErrorBarCodeAlreadyUsed=Code-barres déjà utilisé
+ErrorPrefixRequired=Préfixe obligatoire
 ErrorBadSupplierCodeSyntax=Mauvaise syntaxe pour le code fournisseur
 ErrorSupplierCodeRequired=Code fournisseur obligatoire
 ErrorSupplierCodeAlreadyUsed=Code fournisseur déjà utilisé
 ErrorBadParameters=Paramètres incorrects
 ErrorWrongParameters=Paramètres incorrects ou manquants
 ErrorBadValueForParameter=Valeur '%s' incorrecte pour le paramètre '%s'
-ErrorBadImageFormat=Cet image est dans un format non pris en charge (Votre PHP ne prend pas en charge les fonctions de conversion de ce format d'image).
+ErrorBadImageFormat=Cette image est dans un format non pris en charge (Votre PHP ne prend pas en charge les fonctions de conversion de ce format d'image).
 ErrorBadDateFormat=La valeur '%s' a un format de date non reconnu
-ErrorWrongDate=La date est incorrecte
+ErrorWrongDate=La date est incorrecte !
 ErrorFailedToWriteInDir=Impossible d'écrire dans le répertoire %s
 ErrorFailedToBuildArchive=Échec de la création du fichier d'archive %s
 ErrorFoundBadEmailInFile=Syntaxe d'email 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.
 ErrorFieldsRequired=Des champs obligatoire n'ont pas été remplis.
 ErrorSubjectIsRequired=L'objet de l'e-mail est obligatoire
-ErrorFailedToCreateDir=Echec à la création d'un répertoire. Vérifiez que le user du serveur Web ait 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.
+ErrorFailedToCreateDir=Echec à la création d'un répertoire. Vérifiez que l'utilisateur du serveur Web ait 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
 ErrorSetupOfEmailsNotComplete=La configuration de l'envoi des e-mails n'est pas terminée
 ErrorFeatureNeedJavascript=Cette fonctionnalité a besoin de javascript activé pour fonctionner. Modifiez dans configuration - affichage.
@@ -65,7 +66,7 @@ ErrorFunctionNotAvailableInPHP=La fonction <b>%s</b> est requise pour cette fonc
 ErrorDirAlreadyExists=Un répertoire portant ce nom existe déjà.
 ErrorFileAlreadyExists=Un fichier portant ce nom existe déjà.
 ErrorDestinationAlreadyExists=Un fichier portant le nom <b>%s</b> existe déjà.
-ErrorPartialFile=Fichier non reçu intégralement par le serveur.
+ErrorPartialFile=Fichier incomplet reçu par le serveur.
 ErrorNoTmpDir=Répertoire temporaire de réception %s inexistant.
 ErrorUploadBlockedByAddon=Upload bloqué par un plugin PHP/Apache.
 ErrorFileSizeTooLarge=La taille du fichier est trop grande ou le fichier n'est pas fourni.
@@ -96,6 +97,7 @@ ErrorWrongValueForField=Champ <b>%s</b>: '<b>%s</b>' ne respecte pas la règle <
 ErrorHtmlInjectionForField=Champ <b> %s </b> : La valeur ' <b> %s </b> ' contient une donnée malveillante non autorisée
 ErrorFieldValueNotIn=Champ <b>%s</b>: '<b>%s</b>' n'est pas une valeur disponible dans le champ <b>%s</b> de la table <b>%s</b>
 ErrorFieldRefNotIn=Champ <b>%s</b>: '<b>%s</b>' n'est pas une référence existante comme <b>%s</b>
+ErrorMultipleRecordFoundFromRef=Plusieurs enregistrements ont été trouvés en recherchant la référence <b>%s</b>. Il nous est impossible de déterminer quel ID utiliser.
 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) !
 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.
@@ -106,7 +108,7 @@ ErrorBadMask=Erreur sur le masque
 ErrorBadMaskFailedToLocatePosOfSequence=Erreur, masque sans numéro de séquence
 ErrorBadMaskBadRazMonth=Erreur, mauvais valeur de remise à zéro
 ErrorMaxNumberReachForThisMask=Nombre maximum atteint pour ce masque
-ErrorCounterMustHaveMoreThan3Digits=Le compteur doit avoir au moins 3 positions
+ErrorCounterMustHaveMoreThan3Digits=Le compteur doit posséder au moins 3 chiffres
 ErrorSelectAtLeastOne=Erreur, sélectionnez au moins une entrée.
 ErrorDeleteNotPossibleLineIsConsolidated=Suppression impossible car l'enregistrement porte sur au moins une transaction bancaire rapprochée
 ErrorProdIdAlreadyExist=%s est attribué à un autre tiers
@@ -130,9 +132,9 @@ ErrorLoginHasNoEmail=Cet utilisateur n'a pas d'email. Impossible de continuer.
 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
 ErrorFieldCantBeNegativeOnInvoice=Le champ <strong> %s </strong> ne peut pas être négatif sur ce type de facture. Si vous devez ajouter une ligne de remise, créez d'abord la remise (à partir du champ '%s' dans la fiche du tiers) et appliquez-la à la facture.
-ErrorLinesCantBeNegativeForOneVATRate=Le total des lignes (HT) ne peut pas être négatif pour un taux de TVA non null donné (Un total négatif pour le taux de <b>%s</b>%% a été trouvé).
+ErrorLinesCantBeNegativeForOneVATRate=Le total des lignes (HT) ne peut pas être négatif pour un taux de TVA non nul donné (Un total négatif pour le taux de <b>%s</b>%% a été trouvé).
 ErrorLinesCantBeNegativeOnDeposits=Les lignes ne peuvent pas être négatives dans un acompte. Si vous le faites, vous rencontrerez des problèmes lorsque vous devrez consommer l'acompte dans la facture finale.
-ErrorQtyForCustomerInvoiceCantBeNegative=La quantité d'une ligne ne peut pas être négative dans les factures clients 
+ErrorQtyForCustomerInvoiceCantBeNegative=La quantité d'une ligne ne peut pas être négative dans les factures clients
 ErrorWebServerUserHasNotPermission=Le compte d'exécution du serveur web <b>%s</b> n'a pas les permissions pour cela
 ErrorNoActivatedBarcode=Aucun type de code-barres activé
 ErrUnzipFails=Impossible de décompresser le fichier %s avec ZipArchive
@@ -152,8 +154,8 @@ ErrorPaymentModeDefinedToWithoutSetup=Un mode de paiement a été défini de typ
 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
 ErrorWarehouseMustDiffers=Les entrepôts source et destination doivent être différents
-ErrorBadFormat=Mauvais format
-ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Erreur, cet adhérent n'ait pas encore lié à un tiers. Lier le tier à un tiers existant ou créer un nouveau tiers avant de créer une adhésion avec facture.
+ErrorBadFormat=Mauvais format !
+ErrorMemberNotLinkedToAThirpartyLinkOrCreateFirst=Erreur, cet adhérent n'est pas encore lié à un tiers. Liez le tiers à un tiers existant ou créez un nouveau tiers avant de créer une adhésion avec facture.
 ErrorThereIsSomeDeliveries=Erreur, il y a des bordereaux de réception liées à ces expéditions. La suppression est refusée.
 ErrorCantDeletePaymentReconciliated=Impossible d'effacer un paiement qui a généré une écriture sur le compte bancaire et qui a été rapprochée.
 ErrorCantDeletePaymentSharedWithPayedInvoice=Impossible d'effacer un paiement qui porte sur au moins une facture qui est à l'état payée.
@@ -161,11 +163,11 @@ ErrorPriceExpression1=Ne peut assigner la constante '%s'
 ErrorPriceExpression2=Ne peut redéfinir la fonction '%s'
 ErrorPriceExpression3=Variable '%s' non définie dans la définition de fonction
 ErrorPriceExpression4=Caractère illégal '%s'
-ErrorPriceExpression5=Unexpected '%s'
+ErrorPriceExpression5='%s' inattendu.
 ErrorPriceExpression6=Nombre incorrect d'arguments (%s donné,%s attendu)
 ErrorPriceExpression8=Operateur '%s' non attendu
 ErrorPriceExpression9=Une erreur inattendue s'est produite
-ErrorPriceExpression10=Il manque l'opérande à l'opérateur '%s' 
+ErrorPriceExpression10=Il manque l'opérande à l'opérateur '%s'
 ErrorPriceExpression11=Attendu '%s'
 ErrorPriceExpression14=Division par zéro
 ErrorPriceExpression17=Variable '%s' non définie
@@ -187,16 +189,16 @@ ErrorGlobalVariableUpdater2=Paramètre manquant '%s'
 ErrorGlobalVariableUpdater3=La donnée recherché n'a pas été trouvée
 ErrorGlobalVariableUpdater4=Le client SOAP a échoué avec l'erreur '%s'
 ErrorGlobalVariableUpdater5=Pas de variable globale
-ErrorFieldMustBeANumeric=Le champ <b>%s</b> doit être un numérique
-ErrorMandatoryParametersNotProvided=Paramètre(s) obligatoire(s) non fournis
-ErrorOppStatusRequiredIfAmount=Vous avez fixé un montant estimé pour cette opportunité. Aussi, vous devez également entrer son statut
+ErrorFieldMustBeANumeric=Le champ <b>%s</b> doit être une valeur numérique
+ErrorMandatoryParametersNotProvided=Paramètre(s) obligatoire(s) non fourni(s)
+ErrorOppStatusRequiredIfAmount=Vous avez fixé un montant estimé pour cette opportunité. De plus, vous devez également entrer son statut
 ErrorFailedToLoadModuleDescriptorForXXX=Échec de changement de la classe descripteur du module %s
 ErrorBadDefinitionOfMenuArrayInModuleDescriptor=Mauvaise définition du tableau Menu dans le descripteur de module (mauvaise valeur pour la clé fk_menu)
 ErrorSavingChanges=Une erreur est survenue lors de la sauvegarde des modifications
 ErrorWarehouseRequiredIntoShipmentLine=L'entrepôt est requis sur la ligne de l'expédition
 ErrorFileMustHaveFormat=Le fichier doit avoir le format %s
 ErrorFilenameCantStartWithDot=Le nom de fichier ne peut pas commencer par un '.'
-ErrorSupplierCountryIsNotDefined=Le pays pour ce fournisseur n'est pas défini. Corriger cela.
+ErrorSupplierCountryIsNotDefined=Le pays pour ce fournisseur n'est pas défini. Corrigez cela.
 ErrorsThirdpartyMerge=Echec de la fusion de 2 enregistrements. Demande annulée.
 ErrorStockIsNotEnoughToAddProductOnOrder=Le stock du produit %s est insuffisant pour permettre un ajout dans une nouvelle commande.
 ErrorStockIsNotEnoughToAddProductOnInvoice=Le stock du produit %s est insuffisant pour permettre un ajout dans une nouvelle facture.
@@ -214,7 +216,7 @@ ErrorTaskAlreadyAssigned=Tâche déjà assignée à l'utilisateur
 ErrorModuleFileSeemsToHaveAWrongFormat=Le package du module semble avoir un mauvais format.
 ErrorModuleFileSeemsToHaveAWrongFormat2=Au moins un dossier obligatoire doit être présent dans l'archive zip du module : <strong>%s</strong> ou <strong>%s</strong>
 ErrorFilenameDosNotMatchDolibarrPackageRules=Le nom du package du module (<strong>%s</strong>)  ne correspond pas à la syntaxe attendue: <strong>%s</strong>
-ErrorDuplicateTrigger=Erreur, doublon du trigger nommé %s. Déjà chargé à partir de %s.
+ErrorDuplicateTrigger=Erreur, doublon du déclencheur nommé %s. Déjà chargé à partir de %s.
 ErrorNoWarehouseDefined=Erreur, aucun entrepôts défini.
 ErrorBadLinkSourceSetButBadValueForRef=Le lien que vous utilisez n'est pas valide. Une 'source' pour le paiement est définie, mais la valeur pour 'ref' n'est pas valide.
 ErrorTooManyErrorsProcessStopped=Trop d'erreurs, Le processus a été arrêté.
@@ -223,12 +225,12 @@ ErrorObjectMustHaveStatusDraftToBeValidated=L'objet %s doit être au statut 'Bro
 ErrorObjectMustHaveLinesToBeValidated=L'objet %s doit contenir des lignes
 ErrorOnlyInvoiceValidatedCanBeSentInMassAction=Seules les factures validées peuvent être envoyées à l'aide de l'action de masse "Envoyer par courrier électronique".
 ErrorChooseBetweenFreeEntryOrPredefinedProduct=Vous devez choisir si l'article est un produit prédéfini ou non
-ErrorDiscountLargerThanRemainToPaySplitItBefore=La réduction que vous essayez d'appliquer est supérieure au montant du paiement. Auparavant, divisez le rabais en 2 rabais plus petits.
+ErrorDiscountLargerThanRemainToPaySplitItBefore=La réduction que vous essayez d'appliquer est supérieure au montant du paiement. Auparavant, divisez la remise en 2 rabais plus petits.
 ErrorFileNotFoundWithSharedLink=Fichier non trouvé. Peut être que la clé de partage a été modifiée ou le fichier a été récemment supprimé.
-ErrorProductBarCodeAlreadyExists=Le code-barre du produit %s existe déjà sur une autre référence de produit
+ErrorProductBarCodeAlreadyExists=Le code-barres du produit %s existe déjà sur une autre référence de produit
 ErrorNoteAlsoThatSubProductCantBeFollowedByLot=Notez également que l'utilisation d'un kit pour augmenter ou réduire automatiquement les sous-produits n'est pas possible lorsqu'au moins un sous-produit (ou sous-produit de sous-produits) a besoin d'un numéro de série/lot.
 ErrorDescRequiredForFreeProductLines=La description est obligatoire pour les lignes avec un produit non prédéfini
-ErrorAPageWithThisNameOrAliasAlreadyExists=La page / container <strong> %s </strong> a le même nom ou un autre alias que celui que vous tentez d'utiliser.
+ErrorAPageWithThisNameOrAliasAlreadyExists=La page/container <strong> %s </strong> a le même nom ou un autre alias que celui que vous tentez d'utiliser.
 ErrorDuringChartLoad=Erreur lors du chargement du tableau de compte. Si certains comptes n'ont pas été chargés, vous pouvez toujours les entrer manuellement.
 ErrorBadSyntaxForParamKeyForContent=Mauvaise syntaxe pour le paramètre keyforcontent. La valeur doit commencer par %s ou %s
 ErrorVariableKeyForContentMustBeSet=Erreur, la constante nommée %s (avec le contenu de texte à afficher) ou %s (avec l'adresse externe à afficher) doit être fixée.
@@ -237,11 +239,12 @@ ErrorURLMustStartWithHttp=L'URL %s doit commencer par http:// ou https://
 ErrorHostMustNotStartWithHttp=L'URL %s ne doit PAS commencer par http:// ou https://
 ErrorNewRefIsAlreadyUsed=Erreur, la nouvelle référence est déjà utilisée
 ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Erreur, supprimer le paiement lié à une facture clôturée n'est pas possible.
-ErrorSearchCriteriaTooSmall=Critère de recherche trop petit.
-ErrorObjectMustHaveStatusActiveToBeDisabled=Les objets doivent avoir le statut 'Actif' pour être désactivés 
-ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Les objets doivent avoir le statut 'Brouillon' ou 'Désactivé' pour être activés
+ErrorSearchCriteriaTooSmall=Critère de recherche trop court.
+ErrorObjectMustHaveStatusActiveToBeDisabled=Les objets doivent avoir le statut 'Actif' pour pouvoir être désactivés
+ErrorObjectMustHaveStatusDraftOrDisabledToBeActivated=Les objets doivent avoir le statut 'Brouillon' ou 'Désactivé' pour pouvoir être activés
 ErrorNoFieldWithAttributeShowoncombobox=Aucun champ n'a la propriété 'showoncombobox' dans la définition de l'objet '%s'. Pas moyen d'afficher la liste de cases à cocher
 ErrorFieldRequiredForProduct=Le champ '%s' est obligatoire pour le produit %s
+AlreadyTooMuchPostOnThisIPAdress=Trop de requêtes ont déjà été envoyées depuis cette adresse IP.
 ProblemIsInSetupOfTerminal=Le problème est dans la configuration du terminal %s.
 ErrorAddAtLeastOneLineFirst=Ajouter d'abord au moins une ligne
 ErrorRecordAlreadyInAccountingDeletionNotPossible=Erreur, l'enregistrement est déjà transféré dans la comptabilité, la suppression n'est pas possible.
@@ -283,7 +286,7 @@ ErrorNotApproverForHoliday=Vous n'êtes pas l'approbateur du congé %s
 ErrorAttributeIsUsedIntoProduct=Cet attribut est utilisé dans une ou plusieurs variantes de produit
 ErrorAttributeValueIsUsedIntoProduct=Cette valeur d'attribut est utilisée dans une ou plusieurs variantes de produit
 ErrorPaymentInBothCurrency=Erreur, tous les montants doivent être entrés dans la même colonne.
-ErrorYouTryToPayInvoicesInACurrencyFromBankWithAnotherCurrency=Vous essayez de payer une facture en monnaie %s depuis un compte en %s
+ErrorYouTryToPayInvoicesInACurrencyFromBankWithAnotherCurrency=Vous essayez de payer une facture en devise %s depuis un compte en %s
 ErrorInvoiceLoadThirdParty=Impossible de charger l'objet tiers pour la facture "%s"
 ErrorInvoiceLoadThirdPartyKey=Clé tiers "%s" non définie pour la facture "%s"
 ErrorDeleteLineNotAllowedByObjectStatus=Supprimer une ligne n'est pas autorisée par l'état actuel de l'objet
@@ -298,10 +301,12 @@ ErrorCharPlusNotSupportedByImapForSearch=La recherche IMAP n'est pas en mesure d
 ErrorTableNotFound=Table <b>%s</b> introuvable
 ErrorValueForTooLow=La valeur pour <b>%s</b> est trop faible
 ErrorValueCantBeNull=La valeur pour <b>%s</b> ne peut pas être nulle
+ErrorDateOfMovementLowerThanDateOfFileTransmission=La date de la transaction bancaire ne peut êtse inférieure à la date d'envoi du fichier
+ErrorTooMuchFileInForm=Trop de fichier dans ce formulaire. Le nombre maximal de fichier est de %s fichier(s)
 
 # Warnings
 WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Votre paramètre PHP upload_max_filesize (%s) est supérieur au paramètre PHP post_max_size (%s). Ceci n'est pas une configuration cohérente.
-WarningPasswordSetWithNoAccount=Un mot de passe a été fixé pour cet adhérent. Cependant, aucun compte d'utilisateur n'a été créé. Donc, ce mot de passe est stocké, mais ne peut être utilisé pour accéder à Dolibarr. Il peut être utilisé par un module/interface externe, mais si vous n'avez pas besoin de définir ni login ni mot de passe pour un adhérent, vous pouvez désactiver l'option «Gérer un login pour chaque adhérent" depuis la configuration du module Adhérents. Si vous avez besoin de gérer un login, mais pas de mot de passe, vous pouvez laisser ce champ vide pour éviter cet avertissement. Remarque: L'email peut également être utilisé comme login si l'adhérent est lié à un utilisateur.
+WarningPasswordSetWithNoAccount=Un mot de passe a défini pour cet adhérent. Cependant, aucun compte d'utilisateur n'a été créé. Ce mot de passe a donc été stocké, mais ne peut être utilisé pour accéder à Dolibarr. Il peut être utilisé par un module/interface externe, mais si vous n'avez pas besoin de définir ni login ni mot de passe pour un adhérent, vous pouvez désactiver l'option «Gérer un login pour chaque adhérent" depuis la configuration du module Adhérents. Si vous avez besoin de gérer un login, mais pas de mot de passe, vous pouvez laisser ce champ vide pour éviter cet avertissement. Remarque: L'email peut également être utilisé comme login si l'adhérent est lié à un utilisateur.
 WarningMandatorySetupNotComplete=Cliquez ici pour configurer les paramètres principaux
 WarningEnableYourModulesApplications=Cliquez ici pour activer vos modules et applications
 WarningSafeModeOnCheckExecDir=Attention, l'option PHP <b>safe_mode</b> est active, la commande doit dont être dans un répertoire déclaré dans le paramètre php <b>safe_mode_exec_dir</b>.
@@ -315,11 +320,11 @@ WarningUntilDirRemoved=Les alertes de sécurité sont visibles par les administr
 WarningCloseAlways=Attention, la fermeture se fait même lorsque le montant diffère. N'activez cette fonctionnalité qu'en connaissance de cause.
 WarningUsingThisBoxSlowDown=Attention, l'utilisation de cette boîte provoque de sérieux ralentissements des pages affichant cette boîte.
 WarningClickToDialUserSetupNotComplete=La configuration ClickToDial pour votre compte utilisateur n'est pas complète (voir l'onglet ClickToDial sur votre fiche utilisateur)
-WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Fonction désactivée quand l'affichage est en mode optimisé pour les personnes aveugles ou les navigateurs textes.
+WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Fonction désactivée quand l'affichage est en mode optimisé pour les personnes malvoyantes ou les navigateurs textes.
 WarningPaymentDateLowerThanInvoiceDate=La date de paiement (%s) est inférieure à la date de facturation (%s) de la facture %s.
 WarningTooManyDataPleaseUseMoreFilters=Trop de données (plus de %s lignes). Utilisez davantage de filtres ou régler la constante %s pour augmenter la limite à une valeur plus élevée.
 WarningSomeLinesWithNullHourlyRate=Des temps ont été enregistrés par des utilisateurs lorsque leur taux horaire n'était défini. Une valeur de 0 %s a été utilisée, mais cela peut entraîner une mauvaise évaluation du temps passé.
-WarningYourLoginWasModifiedPleaseLogin=Votre identifiant a été modifié. Par sécurité, vous devrez vous identifier avec votre nouvel identifiant avant l'action suivante.
+WarningYourLoginWasModifiedPleaseLogin=Votre identifiant a été modifié. Par sécurité, vous devrez vous identifier avec votre nouvel identifiant avant la prochaine action.
 WarningAnEntryAlreadyExistForTransKey=Une donnée identique existe déjà pour la traduction du code dans cette langue
 WarningNumberOfRecipientIsRestrictedInMassAction=Attention, le nombre de destinataires différents est limité à <b>%s</b> lorsque vous utilisez les actions en masse sur les listes
 WarningDateOfLineMustBeInExpenseReportRange=Attention, la date de la ligne n'est pas dans la plage de la note de frais
@@ -338,20 +343,20 @@ WarningAutoValNotPossibleWhenStockIsDecreasedOnInvoiceVal=La validation automati
 
 # Validate
 RequireValidValue = Valeur non valide
-RequireAtLeastXString = Requiert au moins %s caractère(s)
-RequireXStringMax = Requiert %s caractère(s) maximum
-RequireAtLeastXDigits = Requiert au moins %s caractère(s)
-RequireXDigitsMax = Requiert %scaractère(s) maximum
+RequireAtLeastXString = Nécessite au moins %s caractère(s)
+RequireXStringMax = Nécessite %s caractère(s) maximum
+RequireAtLeastXDigits = Nécessite au moins %s caractère(s)
+RequireXDigitsMax = Nécessite %scaractère(s) maximum
 RequireValidNumeric = Nécessite une valeur numérique
 RequireValidEmail = L'adresse email n'est pas valide
 RequireMaxLength = La longueur doit être inférieure à %s caractères
 RequireMinLength = La longueur doit être supérieure à %s caractère(s)
-RequireValidUrl = Une URL valide est requise
-RequireValidDate = Date valide requise
-RequireANotEmptyValue = Est requis
-RequireValidDuration = Une durée valide est requise
-RequireValidExistingElement = Une valeur existante est requise
-RequireValidBool = Un booléen valide est requis
+RequireValidUrl = Une URL valide est demandée
+RequireValidDate = Une date valide est nécessaire
+RequireANotEmptyValue = Est nécessaire
+RequireValidDuration = Une durée valide est nécessaire
+RequireValidExistingElement = Une valeur existante est nécessaire
+RequireValidBool = Un booléen valide est nécessaire
 BadSetupOfField = Erreur mauvaise configuration du champ
 BadSetupOfFieldClassNotFoundForValidation = Erreur mauvaise configuration du champ : Classe introuvable pour validation
 BadSetupOfFieldFileNotFound = Erreur mauvaise configuration du champ : Fichier introuvable pour l'inclusion

+ 2 - 1
qodana.yaml

@@ -62,4 +62,5 @@ exclude:
   - name: RegExpUnnecessaryNonCapturingGroup
   - name: PhpPregMatchReplaceWithComparisonInspection
   - name: PhpArrayWriteIsNotUsedInspection
-  - name: PhpUndefinedNamespaceInspection  
+  - name: PhpUndefinedNamespaceInspection
+  - name: PhpArraySearchInBooleanContextInspection