From b73df2698dbf7310473d40f2ad8a35c955c13c9b Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sun, 12 May 2019 14:25:41 +0200 Subject: [PATCH 001/228] FIX better compatibility with Multicompany --- htdocs/comm/propal/class/propal.class.php | 2 +- htdocs/comm/propal/list.php | 2 +- htdocs/commande/card.php | 167 +++++++++--------- htdocs/commande/class/commande.class.php | 16 +- htdocs/commande/document.php | 6 +- htdocs/commande/index.php | 12 +- htdocs/commande/list.php | 8 +- htdocs/commande/orderstoinvoice.php | 4 +- htdocs/compta/facture/document.php | 2 +- htdocs/compta/facture/list.php | 2 +- htdocs/core/class/html.formfile.class.php | 2 +- htdocs/core/lib/files.lib.php | 20 +-- htdocs/core/lib/order.lib.php | 2 +- .../doc/doc_generic_order_odt.modules.php | 2 +- .../commande/doc/pdf_einstein.modules.php | 4 +- .../commande/doc/pdf_eratosthene.modules.php | 4 +- .../modules/commande/mod_commande_marbre.php | 2 +- .../modules/commande/mod_commande_saphir.php | 5 +- htdocs/support/index.php | 2 +- 19 files changed, 133 insertions(+), 131 deletions(-) diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 0b9863f287b..4945ff63305 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -1138,7 +1138,7 @@ class Propal extends CommonObject $sql = "UPDATE ".MAIN_DB_PREFIX."propal"; $sql.= " SET fk_delivery_address = ".$this->fk_delivery_address; $sql.= " WHERE ref = '".$this->db->escape($this->ref)."'"; - $sql.= " AND entity = ".$conf->entity; + $sql.= " AND entity = ".$this->entity; $result=$this->db->query($sql); } diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index b02f788f040..01b07e0d08d 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -998,7 +998,7 @@ if ($resql) // Extra fields include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_print_fields.tpl.php'; // Fields from hook - $parameters=array('arrayfields'=>$arrayfields, 'obj'=>$obj); + $parameters=array('arrayfields'=>$arrayfields, 'obj'=>$obj, 'i'=>$i); $reshook=$hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index 05d02c487c0..32863263d7f 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -96,9 +96,17 @@ include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be inclu // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context $hookmanager->initHooks(array('ordercard','globalcard')); -$permissionnote = $user->rights->commande->creer; // Used by the include of actions_setnotes.inc.php -$permissiondellink = $user->rights->commande->creer; // Used by the include of actions_dellink.inc.php -$permissionedit = $user->rights->commande->creer; // Used by the include of actions_lineupdown.inc.php +$usercanread = $user->rights->commande->lire; +$usercancreate = $user->rights->commande->creer; +$usercanclose = $user->rights->commande->cloturer; +$usercandelete = $user->rights->commande->supprimer; +$usercanvalidate = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $usercancreate) || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->order_advance->validate))); +$usercancancel = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $usercancreate) || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->order_advance->annuler))); +$usercansend = (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->rights->commande->order_advance->send); + +$permissionnote = $usercancreate; // Used by the include of actions_setnotes.inc.php +$permissiondellink = $usercancreate; // Used by the include of actions_dellink.inc.php +$permissionedit = $usercancreate; // Used by the include of actions_lineupdown.inc.php /* @@ -129,7 +137,7 @@ if (empty($reshook)) include DOL_DOCUMENT_ROOT.'/core/actions_lineupdown.inc.php'; // Must be include, not include_once // Action clone object - if ($action == 'confirm_clone' && $confirm == 'yes' && $user->rights->commande->creer) + if ($action == 'confirm_clone' && $confirm == 'yes' && $usercancreate) { if (1==0 && ! GETPOST('clone_content') && ! GETPOST('clone_receivers')) { @@ -159,7 +167,7 @@ if (empty($reshook)) } // Reopen a closed order - elseif ($action == 'reopen' && $user->rights->commande->creer) + elseif ($action == 'reopen' && $usercancreate) { if ($object->statut == Commande::STATUS_CANCELED || $object->statut == Commande::STATUS_CLOSED) { @@ -176,7 +184,7 @@ if (empty($reshook)) } // Remove order - elseif ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->commande->supprimer) + elseif ($action == 'confirm_delete' && $confirm == 'yes' && $usercandelete) { $result = $object->delete($user); if ($result > 0) @@ -191,7 +199,7 @@ if (empty($reshook)) } // Remove a product line - elseif ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->commande->creer) + elseif ($action == 'confirm_deleteline' && $confirm == 'yes' && $usercancreate) { $result = $object->deleteline($user, $lineid); if ($result > 0) @@ -222,13 +230,13 @@ if (empty($reshook)) } // Link to a project - elseif ($action == 'classin' && $user->rights->commande->creer) + elseif ($action == 'classin' && $usercancreate) { $object->setProject(GETPOST('projectid', 'int')); } // Add order - elseif ($action == 'add' && $user->rights->commande->creer) + elseif ($action == 'add' && $usercancreate) { $datecommande = dol_mktime(12, 0, 0, GETPOST('remonth'), GETPOST('reday'), GETPOST('reyear')); $datelivraison = dol_mktime(12, 0, 0, GETPOST('liv_month'), GETPOST('liv_day'), GETPOST('liv_year')); @@ -252,6 +260,7 @@ if (empty($reshook)) $db->begin(); $object->date_commande = $datecommande; + $object->entity = (GETPOSTISSET('entity')?GETPOST('entity', 'int'):$conf->entity); $object->note_private = GETPOST('note_private', 'none'); $object->note_public = GETPOST('note_public', 'none'); $object->source = GETPOST('source_id'); @@ -481,7 +490,7 @@ if (empty($reshook)) } } - elseif ($action == 'classifybilled' && $user->rights->commande->creer) + elseif ($action == 'classifybilled' && $usercancreate) { $ret=$object->classifyBilled($user); @@ -489,7 +498,7 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); } } - elseif ($action == 'classifyunbilled' && $user->rights->commande->creer) + elseif ($action == 'classifyunbilled' && $usercancreate) { $ret=$object->classifyUnBilled(); if ($ret < 0) { @@ -498,7 +507,7 @@ if (empty($reshook)) } // Positionne ref commande client - elseif ($action == 'setref_client' && $user->rights->commande->creer) { + elseif ($action == 'setref_client' && $usercancreate) { $result = $object->set_ref_client($user, GETPOST('ref_client')); if ($result < 0) { @@ -506,7 +515,7 @@ if (empty($reshook)) } } - elseif ($action == 'setremise' && $user->rights->commande->creer) { + elseif ($action == 'setremise' && $usercancreate) { $result = $object->set_remise($user, GETPOST('remise')); if ($result < 0) { @@ -514,7 +523,7 @@ if (empty($reshook)) } } - elseif ($action == 'setabsolutediscount' && $user->rights->commande->creer) { + elseif ($action == 'setabsolutediscount' && $usercancreate) { if (GETPOST('remise_id')) { if ($object->id > 0) { $object->insert_discount(GETPOST('remise_id')); @@ -524,7 +533,7 @@ if (empty($reshook)) } } - elseif ($action == 'setdate' && $user->rights->commande->creer) { + elseif ($action == 'setdate' && $usercancreate) { // print "x ".$_POST['liv_month'].", ".$_POST['liv_day'].", ".$_POST['liv_year']; $date = dol_mktime(0, 0, 0, GETPOST('order_month'), GETPOST('order_day'), GETPOST('order_year')); @@ -534,7 +543,7 @@ if (empty($reshook)) } } - elseif ($action == 'setdate_livraison' && $user->rights->commande->creer) { + elseif ($action == 'setdate_livraison' && $usercancreate) { // print "x ".$_POST['liv_month'].", ".$_POST['liv_day'].", ".$_POST['liv_year']; $datelivraison = dol_mktime(0, 0, 0, GETPOST('liv_month'), GETPOST('liv_day'), GETPOST('liv_year')); @@ -544,35 +553,35 @@ if (empty($reshook)) } } - elseif ($action == 'setmode' && $user->rights->commande->creer) { + elseif ($action == 'setmode' && $usercancreate) { $result = $object->setPaymentMethods(GETPOST('mode_reglement_id', 'int')); if ($result < 0) setEventMessages($object->error, $object->errors, 'errors'); } // Multicurrency Code - elseif ($action == 'setmulticurrencycode' && $user->rights->commande->creer) { + elseif ($action == 'setmulticurrencycode' && $usercancreate) { $result = $object->setMulticurrencyCode(GETPOST('multicurrency_code', 'alpha')); } // Multicurrency rate - elseif ($action == 'setmulticurrencyrate' && $user->rights->commande->creer) { + elseif ($action == 'setmulticurrencyrate' && $usercancreate) { $result = $object->setMulticurrencyRate(price2num(GETPOST('multicurrency_tx'))); } - elseif ($action == 'setavailability' && $user->rights->commande->creer) { + elseif ($action == 'setavailability' && $usercancreate) { $result = $object->availability(GETPOST('availability_id')); if ($result < 0) setEventMessages($object->error, $object->errors, 'errors'); } - elseif ($action == 'setdemandreason' && $user->rights->commande->creer) { + elseif ($action == 'setdemandreason' && $usercancreate) { $result = $object->demand_reason(GETPOST('demand_reason_id')); if ($result < 0) setEventMessages($object->error, $object->errors, 'errors'); } - elseif ($action == 'setconditions' && $user->rights->commande->creer) { + elseif ($action == 'setconditions' && $usercancreate) { $result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int')); if ($result < 0) { dol_print_error($db, $object->error); @@ -604,7 +613,7 @@ if (empty($reshook)) } // bank account - elseif ($action == 'setbankaccount' && $user->rights->commande->creer) { + elseif ($action == 'setbankaccount' && $usercancreate) { $result=$object->setBankAccount(GETPOST('fk_account', 'int')); if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); @@ -612,7 +621,7 @@ if (empty($reshook)) } // shipping method - elseif ($action == 'setshippingmethod' && $user->rights->commande->creer) { + elseif ($action == 'setshippingmethod' && $usercancreate) { $result = $object->setShippingMethod(GETPOST('shipping_method_id', 'int')); if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); @@ -620,23 +629,23 @@ if (empty($reshook)) } // warehouse - elseif ($action == 'setwarehouse' && $user->rights->commande->creer) { + elseif ($action == 'setwarehouse' && $usercancreate) { $result = $object->setWarehouse(GETPOST('warehouse_id', 'int')); if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); } } - elseif ($action == 'setremisepercent' && $user->rights->commande->creer) { + elseif ($action == 'setremisepercent' && $usercancreate) { $result = $object->set_remise($user, GETPOST('remise_percent')); } - elseif ($action == 'setremiseabsolue' && $user->rights->commande->creer) { + elseif ($action == 'setremiseabsolue' && $usercancreate) { $result = $object->set_remise_absolue($user, GETPOST('remise_absolue')); } // Add a new line - elseif ($action == 'addline' && $user->rights->commande->creer) + elseif ($action == 'addline' && $usercancreate) { $langs->load('errors'); $error = 0; @@ -999,7 +1008,7 @@ if (empty($reshook)) /* * Update a line */ - elseif ($action == 'updateline' && $user->rights->commande->creer && GETPOST('save')) + elseif ($action == 'updateline' && $usercancreate && GETPOST('save')) { // Clean parameters $date_start=''; @@ -1133,15 +1142,12 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); } } - } elseif ($action == 'updateline' && $user->rights->commande->creer && GETPOST('cancel', 'alpha') == $langs->trans('Cancel')) { + } elseif ($action == 'updateline' && $usercancreate && GETPOST('cancel', 'alpha') == $langs->trans('Cancel')) { header('Location: ' . $_SERVER['PHP_SELF'] . '?id=' . $object->id); // Pour reaffichage de la fiche en cours d'edition exit(); } - elseif ($action == 'confirm_validate' && $confirm == 'yes' && - ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->creer)) - || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->order_advance->validate))) - ) + elseif ($action == 'confirm_validate' && $confirm == 'yes' && $usercanvalidate) { $idwarehouse = GETPOST('idwarehouse'); @@ -1195,7 +1201,7 @@ if (empty($reshook)) } // Go back to draft status - elseif ($action == 'confirm_modif' && $user->rights->commande->creer) { + elseif ($action == 'confirm_modif' && $usercancreate) { $idwarehouse = GETPOST('idwarehouse'); $qualified_for_stock_change=0; @@ -1243,17 +1249,14 @@ if (empty($reshook)) } } - elseif ($action == 'confirm_shipped' && $confirm == 'yes' && $user->rights->commande->cloturer) { + elseif ($action == 'confirm_shipped' && $confirm == 'yes' && $usercanclose) { $result = $object->cloture($user); if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); } } - elseif ($action == 'confirm_cancel' && $confirm == 'yes' && - ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->creer)) - || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->order_advance->validate))) - ) + elseif ($action == 'confirm_cancel' && $confirm == 'yes' && $usercanvalidate) { $idwarehouse = GETPOST('idwarehouse'); @@ -1310,7 +1313,7 @@ if (empty($reshook)) if ($error) $action = 'edit_extras'; } - if ($action == 'set_thirdparty' && $user->rights->commande->creer) + if ($action == 'set_thirdparty' && $usercancreate) { $object->fetch($id); $object->setValueFrom('fk_soc', $socid, '', '', 'date', '', $user, 'ORDER_MODIFY'); @@ -1321,7 +1324,7 @@ if (empty($reshook)) // add lines from objectlinked if($action == 'import_lines_from_object' - && $user->rights->commande->creer + && $usercancreate && $object->statut == Commande::STATUS_DRAFT ) { @@ -1405,8 +1408,8 @@ if (empty($reshook)) include DOL_DOCUMENT_ROOT.'/core/actions_printing.inc.php'; // Actions to build doc - $upload_dir = $conf->commande->dir_output; - $permissioncreate = $user->rights->commande->creer; + $upload_dir = $conf->commande->multidir_output[$object->entity]; + $permissioncreate = $usercancreate; include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php'; // Actions to send emails @@ -1417,7 +1420,7 @@ if (empty($reshook)) include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php'; - if (! $error && ! empty($conf->global->MAIN_DISABLE_CONTACTS_TAB) && $user->rights->commande->creer) + if (! $error && ! empty($conf->global->MAIN_DISABLE_CONTACTS_TAB) && $usercancreate) { if ($action == 'addcontact') { @@ -1478,7 +1481,7 @@ $formmargin = new FormMargin($db); if (! empty($conf->projet->enabled)) { $formproject = new FormProjets($db); } // Mode creation -if ($action == 'create' && $user->rights->commande->creer) +if ($action == 'create' && $usercancreate) { print load_fiche_titre($langs->trans('CreateOrder'), '', 'title_commercial.png'); @@ -2069,8 +2072,8 @@ if ($action == 'create' && $user->rights->commande->creer) $morehtmlref='
'; // Ref customer - $morehtmlref.=$form->editfieldkey("RefCustomer", 'ref_client', $object->ref_client, $object, $user->rights->commande->creer, 'string', '', 0, 1); - $morehtmlref.=$form->editfieldval("RefCustomer", 'ref_client', $object->ref_client, $object, $user->rights->commande->creer, 'string', '', null, null, '', 1); + $morehtmlref.=$form->editfieldkey("RefCustomer", 'ref_client', $object->ref_client, $object, $usercancreate, 'string', '', 0, 1); + $morehtmlref.=$form->editfieldval("RefCustomer", 'ref_client', $object->ref_client, $object, $usercancreate, 'string', '', null, null, '', 1); // Thirdparty $morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . $soc->getNomUrl(1); if (empty($conf->global->MAIN_DISABLE_OTHER_LINK) && $object->thirdparty->id > 0) $morehtmlref.=' ('.$langs->trans("OtherOrders").')'; @@ -2079,7 +2082,7 @@ if ($action == 'create' && $user->rights->commande->creer) { $langs->load("projects"); $morehtmlref.='
'.$langs->trans('Project') . ' '; - if ($user->rights->commande->creer) + if ($usercancreate) { if ($action != 'classify') $morehtmlref.='' . img_edit($langs->transnoentitiesnoconv('SetProject')) . ' : '; @@ -2159,7 +2162,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Date print ''; - $editenable = $user->rights->commande->creer && $object->statut == Commande::STATUS_DRAFT; + $editenable = $usercancreate && $object->statut == Commande::STATUS_DRAFT; print $form->editfieldkey("Date", 'date', '', $object, $editenable); print ''; if ($action == 'editdate') { @@ -2180,7 +2183,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Delivery date planed print ''; - $editenable = $user->rights->commande->creer; + $editenable = $usercancreate; print $form->editfieldkey("DateDeliveryPlanned", 'date_livraison', '', $object, $editenable); print ''; if ($action == 'editdate_livraison') { @@ -2202,7 +2205,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Shipping Method if (! empty($conf->expedition->enabled)) { print ''; - $editenable = $user->rights->commande->creer; + $editenable = $usercancreate; print $form->editfieldkey("SendingMethod", 'shippingmethod', '', $object, $editenable); print ''; if ($action == 'editshippingmethod') { @@ -2220,7 +2223,7 @@ if ($action == 'create' && $user->rights->commande->creer) require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php'; $formproduct=new FormProduct($db); print ''; - $editenable = $user->rights->commande->creer; + $editenable = $usercancreate; print $form->editfieldkey("Warehouse", 'warehouse', '', $object, $editenable); print ''; if ($action == 'editwarehouse') { @@ -2234,7 +2237,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Terms of payment print ''; - $editenable = $user->rights->commande->creer; + $editenable = $usercancreate; print $form->editfieldkey("PaymentConditionsShort", 'conditions', '', $object, $editenable); print ''; if ($action == 'editconditions') { @@ -2248,7 +2251,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Mode of payment print ''; - $editenable = $user->rights->commande->creer; + $editenable = $usercancreate; print $form->editfieldkey("PaymentMode", 'mode', '', $object, $editenable); print ''; if ($action == 'editmode') { @@ -2264,7 +2267,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Multicurrency code print ''; print ''; - $editenable = $user->rights->commande->creer && $object->statut == Commande::STATUS_DRAFT; + $editenable = $usercancreate && $object->statut == Commande::STATUS_DRAFT; print $form->editfieldkey("Currency", 'multicurrencycode', '', $object, $editenable); print ''; if ($action == 'editmulticurrencycode') { @@ -2277,7 +2280,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Multicurrency rate print ''; print ''; - $editenable = $user->rights->commande->creer && $object->multicurrency_code && $object->multicurrency_code != $conf->currency && $object->statut == Commande::STATUS_DRAFT; + $editenable = $usercancreate && $object->multicurrency_code && $object->multicurrency_code != $conf->currency && $object->statut == Commande::STATUS_DRAFT; print $form->editfieldkey("CurrencyRate", 'multicurrencyrate', '', $object, $editenable); print ''; if ($action == 'editmulticurrencyrate' || $action == 'actualizemulticurrencyrate') { @@ -2298,7 +2301,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Delivery delay print ''; - $editenable = $user->rights->commande->creer; + $editenable = $usercancreate; print $form->editfieldkey("AvailabilityPeriod", 'availability', '', $object, $editenable); print ''; if ($action == 'editavailability') { @@ -2310,7 +2313,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Source reason (why we have an ordrer) print ''; - $editenable = $user->rights->commande->creer; + $editenable = $usercancreate; print $form->editfieldkey("Channel", 'demandreason', '', $object, $editenable); print ''; if ($action == 'editdemandreason') { @@ -2323,7 +2326,7 @@ if ($action == 'create' && $user->rights->commande->creer) // TODO Order mode (how we receive order). Not yet implemented /* print ''; - $editenable = $user->rights->commande->creer; + $editenable = $usercancreate; print $form->editfieldkey("SourceMode", 'inputmode', '', $object, $editenable); print ''; if ($action == 'editinputmode') { @@ -2355,7 +2358,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Incoterms if (!empty($conf->incoterm->enabled)) { print ''; - $editenable = $user->rights->commande->creer; + $editenable = $usercancreate; print $form->editfieldkey("IncotermLabel", 'incoterm', '', $object, $editenable); print ''; print ''; @@ -2373,7 +2376,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Bank Account if (! empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_ORDER) && ! empty($conf->banque->enabled)) { print ''; - $editenable = $user->rights->commande->creer; + $editenable = $usercancreate; print $form->editfieldkey("BankAccount", 'bankaccount', '', $object, $editenable); print ''; if ($action == 'editbankaccount') { @@ -2497,7 +2500,7 @@ if ($action == 'create' && $user->rights->commande->creer) /* * Form to add new line */ - if ($object->statut == Commande::STATUS_DRAFT && $user->rights->commande->creer && $action != 'selectlines') + if ($object->statut == Commande::STATUS_DRAFT && $usercancreate && $action != 'selectlines') { if ($action != 'editline') { @@ -2528,22 +2531,19 @@ if ($action == 'create' && $user->rights->commande->creer) if (empty($reshook)) { // Send if ($object->statut > Commande::STATUS_DRAFT) { - if ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->rights->commande->order_advance->send)) { + if ($usercansend) { print ''; } else print ''; } // Valid - if ($object->statut == Commande::STATUS_DRAFT && $object->total_ttc >= 0 && $numlines > 0 && - ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->creer)) - || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->order_advance->validate))) - ) + if ($object->statut == Commande::STATUS_DRAFT && $object->total_ttc >= 0 && $numlines > 0 && $usercanvalidate) { print ''; } // Edit - if ($object->statut == Commande::STATUS_VALIDATED && $user->rights->commande->creer) { + if ($object->statut == Commande::STATUS_VALIDATED && $usercancreate) { print ''; } // Create event @@ -2597,12 +2597,12 @@ if ($action == 'create' && $user->rights->commande->creer) } // Reopen a closed order - if (($object->statut == Commande::STATUS_CLOSED || $object->statut == Commande::STATUS_CANCELED) && $user->rights->commande->creer) { + if (($object->statut == Commande::STATUS_CLOSED || $object->statut == Commande::STATUS_CANCELED) && $usercancreate) { print ''; } // Set to shipped - if (($object->statut == Commande::STATUS_VALIDATED || $object->statut == Commande::STATUS_SHIPMENTONPROCESS) && $user->rights->commande->cloturer) { + if (($object->statut == Commande::STATUS_VALIDATED || $object->statut == Commande::STATUS_SHIPMENTONPROCESS) && $usercanclose) { print ''; } @@ -2612,31 +2612,28 @@ if ($action == 'create' && $user->rights->commande->creer) if (! empty($conf->facture->enabled) && $user->rights->facture->creer && empty($conf->global->WORKFLOW_DISABLE_CREATE_INVOICE_FROM_ORDER)) { print ''; } - if ($user->rights->commande->creer && $object->statut >= Commande::STATUS_VALIDATED && empty($conf->global->WORKFLOW_DISABLE_CLASSIFY_BILLED_FROM_ORDER) && empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT)) { + if ($usercancreate && $object->statut >= Commande::STATUS_VALIDATED && empty($conf->global->WORKFLOW_DISABLE_CLASSIFY_BILLED_FROM_ORDER) && empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT)) { print ''; } } if ($object->statut > Commande::STATUS_DRAFT && $object->billed) { - if ($user->rights->commande->creer && $object->statut >= Commande::STATUS_VALIDATED && empty($conf->global->WORKFLOW_DISABLE_CLASSIFY_BILLED_FROM_ORDER) && empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT)) { + if ($usercancreate && $object->statut >= Commande::STATUS_VALIDATED && empty($conf->global->WORKFLOW_DISABLE_CLASSIFY_BILLED_FROM_ORDER) && empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT)) { print ''; } } // Clone - if ($user->rights->commande->creer) { + if ($usercancreate) { print ''; } // Cancel order - if ($object->statut == Commande::STATUS_VALIDATED && - ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->cloturer)) - || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->commande->order_advance->annuler))) - ) + if ($object->statut == Commande::STATUS_VALIDATED && (! empty($usercanclose) || ! empty($usercancancel))) { print ''; } // Delete order - if ($user->rights->commande->supprimer) { + if ($usercandelete) { if ($numshipping == 0) { print ''; } else { @@ -2659,18 +2656,18 @@ if ($action == 'create' && $user->rights->commande->creer) // Documents $comref = dol_sanitizeFileName($object->ref); $relativepath = $comref . '/' . $comref . '.pdf'; - $filedir = $conf->commande->dir_output . '/' . $comref; + $filedir = $conf->commande->multidir_output[$object->entity] . '/' . $comref; $urlsource = $_SERVER["PHP_SELF"] . "?id=" . $object->id; - $genallowed = $user->rights->commande->lire; - $delallowed = $user->rights->commande->creer; - print $formfile->showdocuments('commande', $comref, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', '', '', $soc->default_lang); + $genallowed = $usercanread; + $delallowed = $usercancreate; + print $formfile->showdocuments('commande', $comref, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', '', '', $soc->default_lang, '', $object); // Show links to link elements $linktoelem = $form->showLinkToObjectBlock($object, null, array('order')); $compatibleImportElementsList = false; - if($user->rights->commande->creer + if($usercancreate && $object->statut == Commande::STATUS_DRAFT) { $compatibleImportElementsList = array('commande','propal'); // import from linked elements @@ -2707,7 +2704,7 @@ if ($action == 'create' && $user->rights->commande->creer) // Presend form $modelmail='order_send'; $defaulttopic='SendOrderRef'; - $diroutput = $conf->commande->dir_output; + $diroutput = $conf->commande->multidir_output[$object->entity]; $trackid = 'ord'.$object->id; include DOL_DOCUMENT_ROOT.'/core/tpl/card_presend.tpl.php'; diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index 35cb8335232..fdf9703eb8f 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -427,8 +427,8 @@ class Commande extends CommonOrder // in order not to lose the attachments $oldref = dol_sanitizeFileName($this->ref); $newref = dol_sanitizeFileName($num); - $dirsource = $conf->commande->dir_output.'/'.$oldref; - $dirdest = $conf->commande->dir_output.'/'.$newref; + $dirsource = $conf->commande->multidir_output[$this->entity].'/'.$oldref; + $dirdest = $conf->commande->multidir_output[$this->entity].'/'.$newref; if (file_exists($dirsource)) { dol_syslog(get_class($this)."::valid() rename dir ".$dirsource." into ".$dirdest); @@ -437,7 +437,7 @@ class Commande extends CommonOrder { dol_syslog("Rename ok"); // Rename docs starting with $oldref with $newref - $listoffiles=dol_dir_list($conf->commande->dir_output.'/'.$newref, 'files', 1, '^'.preg_quote($oldref, '/')); + $listoffiles=dol_dir_list($conf->commande->multidir_output[$this->entity].'/'.$newref, 'files', 1, '^'.preg_quote($oldref, '/')); foreach($listoffiles as $fileentry) { $dirsource=$fileentry['name']; @@ -776,6 +776,7 @@ class Commande extends CommonOrder // Clean parameters $this->brouillon = 1; // set command as draft + if (empty($this->entity)) $this->entity = $conf->entity; // $date_commande is deprecated $date = ($this->date_commande ? $this->date_commande : $this->date); @@ -859,7 +860,7 @@ class Commande extends CommonOrder $sql.= ", ".($this->remise_percent>0?$this->db->escape($this->remise_percent):0); $sql.= ", ".(int) $this->fk_incoterms; $sql.= ", '".$this->db->escape($this->location_incoterms)."'"; - $sql.= ", ".$conf->entity; + $sql.= ", ".$this->entity; $sql.= ", ".($this->module_source ? "'".$this->db->escape($this->module_source)."'" : "null"); $sql.= ", ".($this->pos_source != '' ? "'".$this->db->escape($this->pos_source)."'" : "null"); $sql.= ", ".(int) $this->fk_multicurrency; @@ -1232,6 +1233,7 @@ class Commande extends CommonOrder $this->lines[$i] = $line; } + $this->entity = $object->entity; $this->socid = $object->socid; $this->fk_project = $object->fk_project; $this->cond_reglement_id = $object->cond_reglement_id; @@ -3320,10 +3322,10 @@ class Commande extends CommonOrder { // Remove directory with files $comref = dol_sanitizeFileName($this->ref); - if ($conf->commande->dir_output && !empty($this->ref)) + if ($conf->commande->multidir_output[$this->entity] && !empty($this->ref)) { - $dir = $conf->commande->dir_output . "/" . $comref ; - $file = $conf->commande->dir_output . "/" . $comref . "/" . $comref . ".pdf"; + $dir = $conf->commande->multidir_output[$this->entity] . "/" . $comref ; + $file = $conf->commande->multidir_output[$this->entity] . "/" . $comref . "/" . $comref . ".pdf"; if (file_exists($file)) // We must delete all files before deleting directory { dol_delete_preview($this); diff --git a/htdocs/commande/document.php b/htdocs/commande/document.php index 37cbc70cd40..ec6ed2fd91b 100644 --- a/htdocs/commande/document.php +++ b/htdocs/commande/document.php @@ -72,7 +72,7 @@ $object = new Commande($db); if ($object->fetch($id)) { $object->fetch_thirdparty(); - $upload_dir = $conf->commande->dir_output . "/" . dol_sanitizeFileName($object->ref); + $upload_dir = $conf->commande->multidir_output[$object->entity] . "/" . dol_sanitizeFileName($object->ref); } include_once DOL_DOCUMENT_ROOT . '/core/actions_linkedfiles.inc.php'; @@ -92,7 +92,7 @@ if ($id > 0 || ! empty($ref)) { $object->fetch_thirdparty(); - $upload_dir = $conf->commande->dir_output.'/'.dol_sanitizeFileName($object->ref); + $upload_dir = $conf->commande->multidir_output[$object->entity].'/'.dol_sanitizeFileName($object->ref); $head = commande_prepare_head($object); dol_fiche_head($head, 'documents', $langs->trans('CustomerOrder'), -1, 'order'); @@ -174,7 +174,7 @@ if ($id > 0 || ! empty($ref)) $modulepart = 'commande'; $permission = $user->rights->commande->creer; $permtoedit = $user->rights->commande->creer; - $param = '&id=' . $object->id; + $param = '&id=' . $object->id.'&entity=' . (! empty($object->entity)?$object->entity:$conf->entity); include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php'; } else diff --git a/htdocs/commande/index.php b/htdocs/commande/index.php index c0091b43af0..123bb64b837 100644 --- a/htdocs/commande/index.php +++ b/htdocs/commande/index.php @@ -235,7 +235,7 @@ $max=5; * Last modified orders */ -$sql = "SELECT c.rowid, c.ref, c.fk_statut, c.facture, c.date_cloture as datec, c.tms as datem,"; +$sql = "SELECT c.rowid, c.entity, c.ref, c.fk_statut, c.facture, c.date_cloture as datec, c.tms as datem,"; $sql.= " s.nom as name, s.rowid as socid"; $sql.= ", s.client"; $sql.= ", s.code_client"; @@ -291,7 +291,7 @@ if ($resql) print ''; $filename=dol_sanitizeFileName($obj->ref); - $filedir=$conf->commande->dir_output . '/' . dol_sanitizeFileName($obj->ref); + $filedir=$conf->commande->multidir_output[$obj->entity] . '/' . dol_sanitizeFileName($obj->ref); $urlsource=$_SERVER['PHP_SELF'].'?id='.$obj->rowid; print $formfile->getDocumentsLink($commandestatic->element, $filename, $filedir); print ''; @@ -317,7 +317,7 @@ else dol_print_error($db); */ if (! empty($conf->commande->enabled)) { - $sql = "SELECT c.rowid, c.ref, c.fk_statut, c.facture, s.nom as name, s.rowid as socid"; + $sql = "SELECT c.rowid, c.entity, c.ref, c.fk_statut, c.facture, s.nom as name, s.rowid as socid"; $sql.= ", s.client"; $sql.= ", s.code_client"; $sql.= ", s.canvas"; @@ -371,7 +371,7 @@ if (! empty($conf->commande->enabled)) print ''; $filename=dol_sanitizeFileName($obj->ref); - $filedir=$conf->commande->dir_output . '/' . dol_sanitizeFileName($obj->ref); + $filedir=$conf->commande->multidir_output[$obj->entity] . '/' . dol_sanitizeFileName($obj->ref); $urlsource=$_SERVER['PHP_SELF'].'?id='.$obj->rowid; print $formfile->getDocumentsLink($commandestatic->element, $filename, $filedir); print ''; @@ -399,7 +399,7 @@ if (! empty($conf->commande->enabled)) */ if (! empty($conf->commande->enabled)) { - $sql = "SELECT c.rowid, c.ref, c.fk_statut, c.facture, s.nom as name, s.rowid as socid"; + $sql = "SELECT c.rowid, c.entity, c.ref, c.fk_statut, c.facture, s.nom as name, s.rowid as socid"; $sql.= ", s.client"; $sql.= ", s.code_client"; $sql.= ", s.canvas"; @@ -453,7 +453,7 @@ if (! empty($conf->commande->enabled)) print ''; $filename=dol_sanitizeFileName($obj->ref); - $filedir=$conf->commande->dir_output . '/' . dol_sanitizeFileName($obj->ref); + $filedir=$conf->commande->multidir_output[$obj->entity] . '/' . dol_sanitizeFileName($obj->ref); $urlsource=$_SERVER['PHP_SELF'].'?id='.$obj->rowid; print $formfile->getDocumentsLink($commandestatic->element, $filename, $filedir); print ''; diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index ad3fd777a5c..073228194b5 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -91,7 +91,7 @@ $id = (GETPOST('orderid')?GETPOST('orderid', 'int'):GETPOST('id', 'int')); if ($user->societe_id) $socid=$user->societe_id; $result = restrictedArea($user, 'commande', $id, ''); -$diroutputmassaction=$conf->commande->dir_output . '/temp/massgeneration/'.$user->id; +$diroutputmassaction=$conf->commande->multidir_output[$conf->entity] . '/temp/massgeneration/'.$user->id; // Load variable for pagination $limit = GETPOST('limit', 'int')?GETPOST('limit', 'int'):$conf->liste_limit; @@ -217,7 +217,7 @@ if (empty($reshook)) $objectlabel='Orders'; $permtoread = $user->rights->commande->lire; $permtodelete = $user->rights->commande->supprimer; - $uploaddir = $conf->commande->dir_output; + $uploaddir = $conf->commande->multidir_output[$conf->entity]; $trigger_name='ORDER_SENTBYMAIL'; include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php'; } @@ -928,7 +928,7 @@ if ($resql) print ''; $filename=dol_sanitizeFileName($obj->ref); - $filedir=$conf->commande->dir_output . '/' . dol_sanitizeFileName($obj->ref); + $filedir=$conf->commande->multidir_output[$conf->entity] . '/' . dol_sanitizeFileName($obj->ref); $urlsource=$_SERVER['PHP_SELF'].'?id='.$obj->rowid; print $formfile->getDocumentsLink($generic_commande->element, $filename, $filedir); print ''; @@ -1075,7 +1075,7 @@ if ($resql) // Extra fields include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_print_fields.tpl.php'; // Fields from hook - $parameters=array('arrayfields'=>$arrayfields, 'obj'=>$obj); + $parameters=array('arrayfields'=>$arrayfields, 'obj'=>$obj, 'i'=>$i); $reshook=$hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation diff --git a/htdocs/commande/orderstoinvoice.php b/htdocs/commande/orderstoinvoice.php index fe017a6b1aa..a960c703eba 100644 --- a/htdocs/commande/orderstoinvoice.php +++ b/htdocs/commande/orderstoinvoice.php @@ -548,7 +548,7 @@ if (($action != 'create' && $action != 'add') || ($action == 'create' && $error) '; $filename=dol_sanitizeFileName($objp->ref); - $filedir=$conf->commande->dir_output . '/' . dol_sanitizeFileName($objp->ref); + $filedir=$conf->commande->multidir_output[$objp->entity] . '/' . dol_sanitizeFileName($objp->ref); $urlsource=$_SERVER['PHP_SELF'].'?id='.$objp->rowid; print $formfile->getDocumentsLink($generic_commande->element, $filename, $filedir); print ''; diff --git a/htdocs/compta/facture/document.php b/htdocs/compta/facture/document.php index 44f69f512bd..9a8f308a0d1 100644 --- a/htdocs/compta/facture/document.php +++ b/htdocs/compta/facture/document.php @@ -97,7 +97,7 @@ if ($id > 0 || ! empty($ref)) { $object->fetch_thirdparty(); - $upload_dir = $conf->facture->dir_output.'/'.dol_sanitizeFileName($object->ref); + $upload_dir = $conf->facture->multidir_output[$object->entity].'/'.dol_sanitizeFileName($object->ref); $head = facture_prepare_head($object); dol_fiche_head($head, 'documents', $langs->trans('InvoiceCustomer'), -1, 'bill'); diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index 05ce6cc3504..b89d257e258 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -1202,7 +1202,7 @@ if ($resql) // Extra fields include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_print_fields.tpl.php'; // Fields from hook - $parameters=array('arrayfields'=>$arrayfields, 'obj'=>$obj); + $parameters=array('arrayfields'=>$arrayfields, 'obj'=>$obj, 'i'=>$i); $reshook=$hookmanager->executeHooks('printFieldListValue', $parameters); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; // Date creation diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 576aff4db66..858d16948e2 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -1228,7 +1228,7 @@ class FormFile print ''; } // Preview link - if (! $editline) print $this->showPreview($file, $modulepart, $filepath); + if (! $editline) print $this->showPreview($file, $modulepart, $filepath, 0, '&entity='.(! empty($object->entity)?$object->entity:$onf->entity)); print "\n"; diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index e00f79b27bc..c7585b65254 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -2186,10 +2186,10 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $original_file=$conf->adherent->dir_output.'/'.$original_file; } // Wrapping pour les apercu factures - elseif ($modulepart == 'apercufacture' && !empty($conf->facture->dir_output)) + elseif ($modulepart == 'apercufacture' && !empty($conf->facture->multidir_output[$entity])) { if ($fuser->rights->facture->{$lire}) $accessallowed=1; - $original_file=$conf->facture->dir_output.'/'.$original_file; + $original_file=$conf->facture->multidir_output[$entity].'/'.$original_file; } // Wrapping pour les apercu propal elseif ($modulepart == 'apercupropal' && !empty($conf->propal->multidir_output[$entity])) @@ -2198,10 +2198,10 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $original_file=$conf->propal->multidir_output[$entity].'/'.$original_file; } // Wrapping pour les apercu commande - elseif ($modulepart == 'apercucommande' && !empty($conf->commande->dir_output)) + elseif ($modulepart == 'apercucommande' && !empty($conf->commande->multidir_output[$entity])) { if ($fuser->rights->commande->{$lire}) $accessallowed=1; - $original_file=$conf->commande->dir_output.'/'.$original_file; + $original_file=$conf->commande->multidir_output[$entity].'/'.$original_file; } // Wrapping pour les apercu intervention elseif (($modulepart == 'apercufichinter' || $modulepart == 'apercuficheinter') && !empty($conf->ficheinter->dir_output)) @@ -2397,13 +2397,13 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } // Wrapping for invoices - elseif (($modulepart == 'facture' || $modulepart == 'invoice') && !empty($conf->facture->dir_output)) + elseif (($modulepart == 'facture' || $modulepart == 'invoice') && !empty($conf->facture->multidir_output[$entity])) { if ($fuser->rights->facture->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed=1; } - $original_file=$conf->facture->dir_output.'/'.$original_file; + $original_file=$conf->facture->multidir_output[$entity].'/'.$original_file; $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."facture WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; } // Wrapping for mass actions @@ -2421,7 +2421,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, { $accessallowed=1; } - $original_file=$conf->commande->dir_output.'/temp/massgeneration/'.$user->id.'/'.$original_file; + $original_file=$conf->commande->multidir_output[$entity].'/temp/massgeneration/'.$user->id.'/'.$original_file; } elseif ($modulepart == 'massfilesarea_invoices') { @@ -2429,7 +2429,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, { $accessallowed=1; } - $original_file=$conf->facture->dir_output.'/temp/massgeneration/'.$user->id.'/'.$original_file; + $original_file=$conf->facture->multidir_output[$entity].'/temp/massgeneration/'.$user->id.'/'.$original_file; } elseif ($modulepart == 'massfilesarea_expensereport') { @@ -2513,13 +2513,13 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, } // Wrapping pour les commandes - elseif (($modulepart == 'commande' || $modulepart == 'order') && !empty($conf->commande->dir_output)) + elseif (($modulepart == 'commande' || $modulepart == 'order') && !empty($conf->commande->multidir_output[$entity])) { if ($fuser->rights->commande->{$lire} || preg_match('/^specimen/i', $original_file)) { $accessallowed=1; } - $original_file=$conf->commande->dir_output.'/'.$original_file; + $original_file=$conf->commande->multidir_output[$entity].'/'.$original_file; $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."commande WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; } diff --git a/htdocs/core/lib/order.lib.php b/htdocs/core/lib/order.lib.php index 6e276dcf8f4..5727ececb5e 100644 --- a/htdocs/core/lib/order.lib.php +++ b/htdocs/core/lib/order.lib.php @@ -96,7 +96,7 @@ function commande_prepare_head(Commande $object) require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/link.class.php'; - $upload_dir = $conf->commande->dir_output . "/" . dol_sanitizeFileName($object->ref); + $upload_dir = $conf->commande->multidir_output[$object->entity] . "/" . dol_sanitizeFileName($object->ref); $nbFiles = count(dol_dir_list($upload_dir, 'files', 0, '', '(\.meta|_preview.*\.png)$')); $nbLinks=Link::count($db, $object->element, $object->id); $head[$h][0] = DOL_URL_ROOT.'/commande/document.php?id='.$object->id; diff --git a/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php b/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php index 5685a839314..eced22d03d8 100644 --- a/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php +++ b/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php @@ -244,7 +244,7 @@ class doc_generic_order_odt extends ModelePDFCommandes } } - $dir = $conf->commande->dir_output; + $dir = $conf->commande->multidir_output[$object->entity]; $objectref = dol_sanitizeFileName($object->ref); if (! preg_match('/specimen/i', $objectref)) $dir.= "/" . $objectref; $file = $dir . "/" . $objectref . ".odt"; diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index 5975da49fbe..78cb2adc9f9 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -239,13 +239,13 @@ class pdf_einstein extends ModelePDFCommandes // Definition of $dir and $file if ($object->specimen) { - $dir = $conf->commande->dir_output; + $dir = $conf->commande->multidir_output[$conf->entity]; $file = $dir . "/SPECIMEN.pdf"; } else { $objectref = dol_sanitizeFileName($object->ref); - $dir = $conf->commande->dir_output . "/" . $objectref; + $dir = $conf->commande->multidir_output[$object->entity] . "/" . $objectref; $file = $dir . "/" . $objectref . ".pdf"; } diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index 1abc6c95e20..d0c5197587f 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -281,13 +281,13 @@ class pdf_eratosthene extends ModelePDFCommandes // Definition of $dir and $file if ($object->specimen) { - $dir = $conf->commande->dir_output; + $dir = $conf->commande->multidir_output[$conf->entity]; $file = $dir . "/SPECIMEN.pdf"; } else { $objectref = dol_sanitizeFileName($object->ref); - $dir = $conf->commande->dir_output . "/" . $objectref; + $dir = $conf->commande->multidir_output[$object->entity] . "/" . $objectref; $file = $dir . "/" . $objectref . ".pdf"; } diff --git a/htdocs/core/modules/commande/mod_commande_marbre.php b/htdocs/core/modules/commande/mod_commande_marbre.php index 28d488eb6fb..160a07635f4 100644 --- a/htdocs/core/modules/commande/mod_commande_marbre.php +++ b/htdocs/core/modules/commande/mod_commande_marbre.php @@ -121,7 +121,7 @@ class mod_commande_marbre extends ModeleNumRefCommandes $sql = "SELECT MAX(CAST(SUBSTRING(ref FROM ".$posindice.") AS SIGNED)) as max"; $sql.= " FROM ".MAIN_DB_PREFIX."commande"; $sql.= " WHERE ref LIKE '".$db->escape($this->prefix)."____-%'"; - $sql.= " AND entity = ".$conf->entity; + $sql.= " AND entity IN (".getEntity('ordernumber', 1, $object).")"; $resql=$db->query($sql); if ($resql) diff --git a/htdocs/core/modules/commande/mod_commande_saphir.php b/htdocs/core/modules/commande/mod_commande_saphir.php index 8c96c237a0f..f722a017c0b 100644 --- a/htdocs/core/modules/commande/mod_commande_saphir.php +++ b/htdocs/core/modules/commande/mod_commande_saphir.php @@ -137,9 +137,12 @@ class mod_commande_saphir extends ModeleNumRefCommandes return 0; } + // Get entities + $entity = getEntity('ordernumber', 1, $object); + $date = ($object->date_commande ? $object->date_commande : $object->date); - $numFinal=get_next_value($db, $mask, 'commande', 'ref', '', $objsoc, $date); + $numFinal=get_next_value($db, $mask, 'commande', 'ref', '', $objsoc, $date, 'next', false, null, $entity); return $numFinal; } diff --git a/htdocs/support/index.php b/htdocs/support/index.php index c5f0494eb59..9bc1027805a 100644 --- a/htdocs/support/index.php +++ b/htdocs/support/index.php @@ -73,7 +73,7 @@ print '
'.img_picto('', 'who.png', 'class="valigntex print ''.$langs->trans("CommunitySupport").''; print '
'.$langs->trans("TypeOfSupport").': '.$langs->trans("TypeSupportCommunauty").''; print '
'.$langs->trans("TypeOfHelp").'/'.$langs->trans("Efficiency").'/'.$langs->trans("Price").': '; -print $langs->trans("TypeHelpDev").'/'.img_picto_common('', 'redstar', 'class="valigntextbottom"', 1).img_picto_common('', 'redstar', 'class="valigntextbottom"', 1).'/'.img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1); +print $langs->trans("TypeHelpDev").'/'.img_picto_common('', 'redstar', 'class="valigntextbottom minwidth50"', 1).img_picto_common('', 'redstar', 'class="valigntextbottom minwidth50"', 1).'/'.img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1); print '
'; print ''; From 82ee85b665f7f5fc2155f2c7f22090c0208b3d81 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sun, 12 May 2019 14:29:41 +0200 Subject: [PATCH 002/228] FIX remove test --- htdocs/support/index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/support/index.php b/htdocs/support/index.php index 9bc1027805a..c5f0494eb59 100644 --- a/htdocs/support/index.php +++ b/htdocs/support/index.php @@ -73,7 +73,7 @@ print '
'.img_picto('', 'who.png', 'class="valigntex print ''.$langs->trans("CommunitySupport").''; print '
'.$langs->trans("TypeOfSupport").': '.$langs->trans("TypeSupportCommunauty").''; print '
'.$langs->trans("TypeOfHelp").'/'.$langs->trans("Efficiency").'/'.$langs->trans("Price").': '; -print $langs->trans("TypeHelpDev").'/'.img_picto_common('', 'redstar', 'class="valigntextbottom minwidth50"', 1).img_picto_common('', 'redstar', 'class="valigntextbottom minwidth50"', 1).'/'.img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1); +print $langs->trans("TypeHelpDev").'/'.img_picto_common('', 'redstar', 'class="valigntextbottom"', 1).img_picto_common('', 'redstar', 'class="valigntextbottom"', 1).'/'.img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1).img_picto_common('', 'star', 'class="valigntextbottom"', 1); print '
'; print ''; From 62489d1f5ef67fa97e263cecf12de883eb8e70fc Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sun, 12 May 2019 14:41:30 +0200 Subject: [PATCH 003/228] FIX replace "dir_output" with "multidir_output" --- htdocs/compta/facture/card.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index beebe3cb561..3733fda8e67 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -2425,7 +2425,7 @@ $result = $object->updateline(GETPOST('lineid'), $description, $pu_ht, $qty, GET include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php'; // Actions to build doc - $upload_dir = $conf->facture->dir_output; + $upload_dir = $conf->facture->multidir_output[$object->entity]; $permissioncreate=$usercancreate; include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php'; @@ -4859,12 +4859,12 @@ elseif ($id > 0 || ! empty($ref)) // Documents generes $filename = dol_sanitizeFileName($object->ref); - $filedir = $conf->facture->dir_output . '/' . dol_sanitizeFileName($object->ref); + $filedir = $conf->facture->multidir_output[$object->entity] . '/' . dol_sanitizeFileName($object->ref); $urlsource = $_SERVER['PHP_SELF'] . '?facid=' . $object->id; $genallowed = $usercanread; $delallowed = $usercancreate; - print $formfile->showdocuments('facture', $filename, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', '', '', $soc->default_lang); + print $formfile->showdocuments('facture', $filename, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', '', '', $soc->default_lang, '', $object); $somethingshown = $formfile->numoffiles; // Show links to link elements @@ -4911,7 +4911,7 @@ elseif ($id > 0 || ! empty($ref)) // Presend form $modelmail='facture_send'; $defaulttopic='SendBillRef'; - $diroutput = $conf->facture->dir_output; + $diroutput = $conf->facture->multidir_output[$object->entity]; $trackid = 'inv'.$object->id; include DOL_DOCUMENT_ROOT.'/core/tpl/card_presend.tpl.php'; From 3cb6ca34e9596587779fa0f722b0c76365dcb1ef Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sun, 12 May 2019 16:06:16 +0200 Subject: [PATCH 004/228] FIX multicompany compatibility --- htdocs/core/class/conf.class.php | 3 +++ htdocs/core/modules/commande/doc/pdf_einstein.modules.php | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php index 861c273e28a..d3ca2c6126f 100644 --- a/htdocs/core/class/conf.class.php +++ b/htdocs/core/class/conf.class.php @@ -327,6 +327,9 @@ class Conf } // For mycompany storage + $this->mycompany->multidir_output = array($this->entity => $rootfordata."/mycompany"); + $this->mycompany->multidir_temp = array($this->entity => $rootfordata."/mycompany/temp"); + // For backward compatibility $this->mycompany->dir_output=$rootfordata."/mycompany"; $this->mycompany->dir_temp=$rootfordata."/mycompany/temp"; diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index 78cb2adc9f9..63f9093842b 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -1255,7 +1255,8 @@ class pdf_einstein extends ModelePDFCommandes // Logo if (empty($conf->global->PDF_DISABLE_MYCOMPANY_LOGO)) { - $logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; + var_dump($conf->mycompany); exit; + $logo=$conf->mycompany->dir_output[$object->entity].'/logos/'.$this->emetteur->logo; if ($this->emetteur->logo) { if (is_readable($logo)) From 156b25a702665077d880a3212a591f51297fdd7b Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sun, 12 May 2019 16:36:29 +0200 Subject: [PATCH 005/228] FIX use "multidir_output" instead "dir_output" --- htdocs/core/modules/commande/doc/pdf_einstein.modules.php | 5 ++--- .../core/modules/commande/doc/pdf_eratosthene.modules.php | 4 ++-- htdocs/core/modules/facture/doc/pdf_crabe.modules.php | 4 ++-- htdocs/core/modules/facture/doc/pdf_sponge.modules.php | 6 +++--- htdocs/core/modules/propale/doc/pdf_azur.modules.php | 4 ++-- htdocs/core/modules/propale/doc/pdf_cyan.modules.php | 4 ++-- 6 files changed, 13 insertions(+), 14 deletions(-) diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index 63f9093842b..f9c62a197ff 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -290,7 +290,7 @@ class pdf_einstein extends ModelePDFCommandes // Set path to the background PDF File if (! empty($conf->global->MAIN_ADD_PDF_BACKGROUND)) { - $pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); + $pagecount = $pdf->setSourceFile($conf->mycompany->multidir_output[$object->entity].'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); $tplidx = $pdf->importPage(1); } @@ -1255,8 +1255,7 @@ class pdf_einstein extends ModelePDFCommandes // Logo if (empty($conf->global->PDF_DISABLE_MYCOMPANY_LOGO)) { - var_dump($conf->mycompany); exit; - $logo=$conf->mycompany->dir_output[$object->entity].'/logos/'.$this->emetteur->logo; + $logo=$conf->mycompany->multidir_output[$object->entity].'/logos/'.$this->emetteur->logo; if ($this->emetteur->logo) { if (is_readable($logo)) diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index d0c5197587f..ff1c84a2783 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -331,7 +331,7 @@ class pdf_eratosthene extends ModelePDFCommandes // Set path to the background PDF File if (! empty($conf->global->MAIN_ADD_PDF_BACKGROUND)) { - $pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); + $pagecount = $pdf->setSourceFile($conf->mycompany->multidir_output[$object->entity].'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); $tplidx = $pdf->importPage(1); } @@ -1390,7 +1390,7 @@ class pdf_eratosthene extends ModelePDFCommandes // Logo if (empty($conf->global->PDF_DISABLE_MYCOMPANY_LOGO)) { - $logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; + $logo=$conf->mycompany->multidir_output[$object->entity].'/logos/'.$this->emetteur->logo; if ($this->emetteur->logo) { if (is_readable($logo)) diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php index a641e209f9e..dd6300f4296 100644 --- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php @@ -340,7 +340,7 @@ class pdf_crabe extends ModelePDFFactures // Set path to the background PDF File if (! empty($conf->global->MAIN_ADD_PDF_BACKGROUND)) { - $pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); + $pagecount = $pdf->setSourceFile($conf->mycompany->multidir_output[$object->entity].'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); $tplidx = $pdf->importPage(1); } @@ -1582,7 +1582,7 @@ class pdf_crabe extends ModelePDFFactures // Logo if (empty($conf->global->PDF_DISABLE_MYCOMPANY_LOGO)) { - $logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; + $logo=$conf->mycompany->multidir_output[$object->entity].'/logos/'.$this->emetteur->logo; if ($this->emetteur->logo) { if (is_readable($logo)) diff --git a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php index 9c7c7797841..fbe5bdfb5da 100644 --- a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php @@ -352,7 +352,7 @@ class pdf_sponge extends ModelePDFFactures // Set path to the background PDF File if (! empty($conf->global->MAIN_ADD_PDF_BACKGROUND)) { - $pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); + $pagecount = $pdf->setSourceFile($conf->mycompany->multidir_output[$object->entity].'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); $tplidx = $pdf->importPage(1); } @@ -449,7 +449,7 @@ class pdf_sponge extends ModelePDFFactures complete_substitutions_array($substitutionarray, $outputlangs, $object); $notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs); $notetoshow = convertBackOfficeMediasLinksToPublicLinks($notetoshow); - + $pdf->startTransaction(); $pdf->SetFont('', '', $default_font_size - 1); @@ -1600,7 +1600,7 @@ class pdf_sponge extends ModelePDFFactures // Logo if (empty($conf->global->PDF_DISABLE_MYCOMPANY_LOGO)) { - $logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; + $logo=$conf->mycompany->multidir_output[$object->entity].'/logos/'.$this->emetteur->logo; if ($this->emetteur->logo) { if (is_readable($logo)) diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/htdocs/core/modules/propale/doc/pdf_azur.modules.php index 54fe56421ea..5f5b2dcf4cb 100644 --- a/htdocs/core/modules/propale/doc/pdf_azur.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_azur.modules.php @@ -344,7 +344,7 @@ class pdf_azur extends ModelePDFPropales // Set path to the background PDF File if (! empty($conf->global->MAIN_ADD_PDF_BACKGROUND)) { - $pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); + $pagecount = $pdf->setSourceFile($conf->mycompany->multidir_output[$object->entity].'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); $tplidx = $pdf->importPage(1); } @@ -1459,7 +1459,7 @@ class pdf_azur extends ModelePDFPropales // Logo if (empty($conf->global->PDF_DISABLE_MYCOMPANY_LOGO)) { - $logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; + $logo=$conf->mycompany->multidir_output[$object->entity].'/logos/'.$this->emetteur->logo; if ($this->emetteur->logo) { if (is_readable($logo)) diff --git a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php index 14a2456157a..0ba7cf574ce 100644 --- a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php @@ -330,7 +330,7 @@ class pdf_cyan extends ModelePDFPropales // Set path to the background PDF File if (! empty($conf->global->MAIN_ADD_PDF_BACKGROUND)) { - $pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); + $pagecount = $pdf->setSourceFile($conf->mycompany->multidir_output[$object->entity].'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); $tplidx = $pdf->importPage(1); } @@ -1505,7 +1505,7 @@ class pdf_cyan extends ModelePDFPropales // Logo if (empty($conf->global->PDF_DISABLE_MYCOMPANY_LOGO)) { - $logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; + $logo=$conf->mycompany->multidir_output[$object->entity].'/logos/'.$this->emetteur->logo; if ($this->emetteur->logo) { if (is_readable($logo)) From 38246b408815c26ee0655f95f10a9af53339d426 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Mon, 3 Jun 2019 11:13:26 +0200 Subject: [PATCH 006/228] NEW add new function "setEntity()" --- htdocs/commande/card.php | 1 - htdocs/commande/class/commande.class.php | 3 +-- htdocs/core/class/html.formfile.class.php | 2 +- htdocs/core/lib/functions.lib.php | 22 +++++++++++++++++++++- 4 files changed, 23 insertions(+), 5 deletions(-) diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index 32863263d7f..a0552586ffe 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -260,7 +260,6 @@ if (empty($reshook)) $db->begin(); $object->date_commande = $datecommande; - $object->entity = (GETPOSTISSET('entity')?GETPOST('entity', 'int'):$conf->entity); $object->note_private = GETPOST('note_private', 'none'); $object->note_public = GETPOST('note_public', 'none'); $object->source = GETPOST('source_id'); diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index 37f4ac4b9b2..d43e3eb6041 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -776,7 +776,6 @@ class Commande extends CommonOrder // Clean parameters $this->brouillon = 1; // set command as draft - if (empty($this->entity)) $this->entity = $conf->entity; // $date_commande is deprecated $date = ($this->date_commande ? $this->date_commande : $this->date); @@ -860,7 +859,7 @@ class Commande extends CommonOrder $sql.= ", ".($this->remise_percent>0?$this->db->escape($this->remise_percent):0); $sql.= ", ".(int) $this->fk_incoterms; $sql.= ", '".$this->db->escape($this->location_incoterms)."'"; - $sql.= ", ".$this->entity; + $sql.= ", ".setEntity($this); $sql.= ", ".($this->module_source ? "'".$this->db->escape($this->module_source)."'" : "null"); $sql.= ", ".($this->pos_source != '' ? "'".$this->db->escape($this->pos_source)."'" : "null"); $sql.= ", ".(int) $this->fk_multicurrency; diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 135fd2969d3..d965ca9f245 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -1238,7 +1238,7 @@ class FormFile print ''; } // Preview link - if (! $editline) print $this->showPreview($file, $modulepart, $filepath, 0, '&entity='.(! empty($object->entity)?$object->entity:$onf->entity)); + if (! $editline) print $this->showPreview($file, $modulepart, $filepath, 0, '&entity='.(! empty($object->entity)?$object->entity:$conf->entity)); print "\n"; diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 19b39fd776d..de52d3a74d1 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -75,7 +75,7 @@ function getDoliDBInstance($type, $host, $user, $pass, $name, $port) * @param int $shared 0=Return id of current entity only, * 1=Return id of current entity + shared entities (default) * @param object $currentobject Current object if needed - * @return mixed Entity id(s) to use + * @return mixed Entity id(s) to use */ function getEntity($element, $shared = 1, $currentobject = null) { @@ -95,6 +95,26 @@ function getEntity($element, $shared = 1, $currentobject = null) } } +/** + * Get entity id to use when to create an object + * + * @param object $currentobject Current object + * @return mixed Entity id to use + */ +function setEntity($currentobject) +{ + global $conf, $mc; + + if (is_object($mc)) + { + return $mc->setEntity($currentobject); + } + else + { + return $conf->entity; + } +} + /** * Return information about user browser * From fc83585574254e32ecc0ed9131bcd05227b35f0e Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Mon, 3 Jun 2019 11:37:04 +0200 Subject: [PATCH 007/228] FIX use setEntity() to move code in multicompany module --- htdocs/comm/propal/card.php | 1 - htdocs/comm/propal/class/propal.class.php | 7 +++-- htdocs/compta/facture/card.php | 6 +---- htdocs/compta/facture/class/facture.class.php | 27 +++++++++++-------- 4 files changed, 20 insertions(+), 21 deletions(-) diff --git a/htdocs/comm/propal/card.php b/htdocs/comm/propal/card.php index c8cba5c3dda..c2d765afab7 100644 --- a/htdocs/comm/propal/card.php +++ b/htdocs/comm/propal/card.php @@ -380,7 +380,6 @@ if (empty($reshook)) } } else { $object->ref = GETPOST('ref'); - $object->entity = (GETPOSTISSET('entity')?GETPOST('entity', 'int'):$conf->entity); $object->ref_client = GETPOST('ref_client'); $object->datep = $datep; $object->date_livraison = $date_delivery; diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 4945ff63305..599f3685f8d 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -890,7 +890,6 @@ class Propal extends CommonObject $now=dol_now(); // Clean parameters - if (empty($this->entity)) $this->entity = $conf->entity; if (empty($this->date)) $this->date=$this->datep; $this->fin_validite = $this->date + ($this->duree_validite * 24 * 3600); if (empty($this->availability_id)) $this->availability_id=0; @@ -1000,7 +999,7 @@ class Propal extends CommonObject $sql.= ", ".($this->fk_project?$this->fk_project:"null"); $sql.= ", ".(int) $this->fk_incoterms; $sql.= ", '".$this->db->escape($this->location_incoterms)."'"; - $sql.= ", ".$this->entity; + $sql.= ", ".setEntity($this); $sql.= ", ".(int) $this->fk_multicurrency; $sql.= ", '".$this->db->escape($this->multicurrency_code)."'"; $sql.= ", ".(double) $this->multicurrency_tx; @@ -1091,7 +1090,7 @@ class Propal extends CommonObject $vatrate = $line->tva_tx; if ($line->vat_src_code && ! preg_match('/\(.*\)/', $vatrate)) $vatrate.=' ('.$line->vat_src_code.')'; - $result = $this->addline( + $result = $this->addline( $line->desc, $line->subprice, $line->qty, @@ -1138,7 +1137,7 @@ class Propal extends CommonObject $sql = "UPDATE ".MAIN_DB_PREFIX."propal"; $sql.= " SET fk_delivery_address = ".$this->fk_delivery_address; $sql.= " WHERE ref = '".$this->db->escape($this->ref)."'"; - $sql.= " AND entity = ".$this->entity; + $sql.= " AND entity = ".setEntity($this); $result=$this->db->query($sql); } diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index a7ce35974fb..f3361eb78ee 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -912,7 +912,6 @@ if (empty($reshook)) $object->location_incoterms = GETPOST('location_incoterms', 'alpha'); $object->multicurrency_code = GETPOST('multicurrency_code', 'alpha'); $object->multicurrency_tx = GETPOST('originmulticurrency_tx', 'int'); - $object->entity = (GETPOSTISSET('entity')?GETPOST('entity', 'int'):$conf->entity); // Proprietes particulieres a facture de remplacement $object->fk_facture_source = $_POST['fac_replacement']; @@ -946,7 +945,7 @@ if (empty($reshook)) if (! $error) { - if(!empty($originentity)){ + if (!empty($originentity)) { $object->entity = $originentity; } $object->socid = GETPOST('socid', 'int'); @@ -968,7 +967,6 @@ if (empty($reshook)) $object->location_incoterms = GETPOST('location_incoterms', 'alpha'); $object->multicurrency_code = GETPOST('multicurrency_code', 'alpha'); $object->multicurrency_tx = GETPOST('originmulticurrency_tx', 'int'); - $object->entity = (GETPOSTISSET('entity')?GETPOST('entity', 'int'):$conf->entity); // Proprietes particulieres a facture avoir $object->fk_facture_source = $sourceinvoice > 0 ? $sourceinvoice : ''; @@ -1150,7 +1148,6 @@ if (empty($reshook)) $object->location_incoterms = GETPOST('location_incoterms', 'alpha'); $object->multicurrency_code = GETPOST('multicurrency_code', 'alpha'); $object->multicurrency_tx = GETPOST('originmulticurrency_tx', 'int'); - $object->entity = (GETPOSTISSET('entity')?GETPOST('entity', 'int'):$conf->entity); // Source facture $object->fac_rec = GETPOST('fac_rec', 'int'); @@ -1201,7 +1198,6 @@ if (empty($reshook)) $object->location_incoterms = GETPOST('location_incoterms', 'alpha'); $object->multicurrency_code = GETPOST('multicurrency_code', 'alpha'); $object->multicurrency_tx = GETPOST('originmulticurrency_tx', 'int'); - $object->entity = (GETPOSTISSET('entity')?GETPOST('entity', 'int'):$conf->entity); if (GETPOST('type') == Facture::TYPE_SITUATION) { diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index 686190c359b..991569ec4ae 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -303,7 +303,6 @@ class Facture extends CommonInvoice if (! $this->cond_reglement_id) $this->cond_reglement_id = 0; if (! $this->mode_reglement_id) $this->mode_reglement_id = 0; $this->brouillon = 1; - if (empty($this->entity)) $this->entity = $conf->entity; // Multicurrency (test on $this->multicurrency_tx because we should take the default rate only if not using origin rate) if (!empty($this->multicurrency_code) && empty($this->multicurrency_tx)) list($this->fk_multicurrency,$this->multicurrency_tx) = MultiCurrency::getIdAndTxFromCode($this->db, $this->multicurrency_code); @@ -474,7 +473,7 @@ class Facture extends CommonInvoice $sql.= ")"; $sql.= " VALUES ("; $sql.= "'(PROV)'"; - $sql.= ", ".$this->entity; + $sql.= ", ".setEntity($this); $sql.= ", ".($this->ref_ext?"'".$this->db->escape($this->ref_ext)."'":"null"); $sql.= ", '".$this->db->escape($this->type)."'"; $sql.= ", '".$socid."'"; @@ -913,8 +912,8 @@ class Facture extends CommonInvoice $facture->remise_absolue = $this->remise_absolue; $facture->remise_percent = $this->remise_percent; - $facture->origin = $this->origin; - $facture->origin_id = $this->origin_id; + $facture->origin = $this->origin; + $facture->origin_id = $this->origin_id; $facture->lines = $this->lines; // Tableau des lignes de factures $facture->products = $this->lines; // Tant que products encore utilise @@ -1582,7 +1581,11 @@ class Facture extends CommonInvoice $this->tab_previous_situation_invoice = array(); $this->tab_next_situation_invoice = array(); - $sql = 'SELECT rowid, situation_counter FROM '.MAIN_DB_PREFIX.'facture WHERE rowid <> '.$this->id.' AND entity = '.$conf->entity.' AND situation_cycle_ref = '.(int) $this->situation_cycle_ref.' ORDER BY situation_counter ASC'; + $sql = 'SELECT rowid, situation_counter FROM '.MAIN_DB_PREFIX.'facture'; + $sql.= ' WHERE rowid <> '.$this->id; + $sql.= ' AND entity = '.$this->entity; + $sql.= ' AND situation_cycle_ref = '.(int) $this->situation_cycle_ref; + $sql.= ' ORDER BY situation_counter ASC'; dol_syslog(get_class($this).'::fetchPreviousNextSituationInvoice ', LOG_DEBUG); $result = $this->db->query($sql); @@ -3648,11 +3651,11 @@ class Facture extends CommonInvoice $sql.= " AND ff.type IS NULL"; // Renvoi vrai si pas facture de remplacement $sql.= " AND f.type != ".self::TYPE_CREDIT_NOTE; // Type non 2 si facture non avoir - if($conf->global->INVOICE_USE_SITUATION_CREDIT_NOTE){ + if (! empty($conf->global->INVOICE_USE_SITUATION_CREDIT_NOTE)) { // Select the last situation invoice $sqlSit = 'SELECT MAX(fs.rowid)'; $sqlSit.= " FROM ".MAIN_DB_PREFIX."facture as fs"; - $sqlSit.= " WHERE fs.entity = ".$conf->entity; + $sqlSit.= " WHERE fs.entity IN (".getEntity('invoice').")"; $sqlSit.= " AND fs.type = ".self::TYPE_SITUATION; $sqlSit.= " AND fs.fk_statut in (".self::STATUS_VALIDATED.",".self::STATUS_CLOSED.")"; $sqlSit.= " GROUP BY fs.situation_cycle_ref"; @@ -4178,7 +4181,7 @@ class Facture extends CommonInvoice public function newCycle() { $sql = 'SELECT max(situation_cycle_ref) FROM ' . MAIN_DB_PREFIX . 'facture as f'; - $sql.= " WHERE f.entity in (".getEntity('invoice', 0).")"; + $sql.= " WHERE f.entity IN (".getEntity('invoice', 0).")"; $resql = $this->db->query($sql); if ($resql) { if ($resql->num_rows > 0) @@ -4222,8 +4225,8 @@ class Facture extends CommonInvoice global $conf; $sql = 'SELECT rowid FROM ' . MAIN_DB_PREFIX . 'facture'; - $sql .= ' where situation_cycle_ref = ' . $this->situation_cycle_ref; - $sql .= ' and situation_counter < ' . $this->situation_counter; + $sql .= ' WHERE situation_cycle_ref = ' . $this->situation_cycle_ref; + $sql .= ' AND situation_counter < ' . $this->situation_counter; $sql .= ' AND entity = '. ($this->entity > 0 ? $this->entity : $conf->entity); $resql = $this->db->query($sql); $res = array(); @@ -4304,7 +4307,9 @@ class Facture extends CommonInvoice if (!empty($this->situation_cycle_ref)) { // No point in testing anything if we're not inside a cycle - $sql = 'SELECT max(situation_counter) FROM ' . MAIN_DB_PREFIX . 'facture WHERE situation_cycle_ref = ' . $this->situation_cycle_ref . ' AND entity = ' . ($this->entity > 0 ? $this->entity : $conf->entity); + $sql = 'SELECT max(situation_counter) FROM ' . MAIN_DB_PREFIX . 'facture'; + $sql.= ' WHERE situation_cycle_ref = ' . $this->situation_cycle_ref; + $sql.= ' AND entity = ' . ($this->entity > 0 ? $this->entity : $conf->entity); $resql = $this->db->query($sql); if ($resql && $resql->num_rows > 0) { From b0042995ac7fb8bf00d23033b41154d02f195f7a Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Mon, 3 Jun 2019 12:04:17 +0200 Subject: [PATCH 008/228] FIX add docs --- htdocs/core/lib/functions.lib.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index de52d3a74d1..69fde6369e6 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -75,7 +75,7 @@ function getDoliDBInstance($type, $host, $user, $pass, $name, $port) * @param int $shared 0=Return id of current entity only, * 1=Return id of current entity + shared entities (default) * @param object $currentobject Current object if needed - * @return mixed Entity id(s) to use + * @return mixed Entity id(s) to use ( eg. entity IN ('.getEntity(elementname).')' ) */ function getEntity($element, $shared = 1, $currentobject = null) { @@ -96,10 +96,10 @@ function getEntity($element, $shared = 1, $currentobject = null) } /** - * Get entity id to use when to create an object + * Set entity id to use when to create an object * * @param object $currentobject Current object - * @return mixed Entity id to use + * @return mixed Entity id to use ( eg. entity = '.getEntity($object) ) */ function setEntity($currentobject) { From e5e611154436f64b8b43d1d237a1ec76ff97c0b5 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Mon, 3 Jun 2019 12:05:58 +0200 Subject: [PATCH 009/228] FIX wrong function name --- htdocs/core/lib/functions.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 69fde6369e6..978c360f60d 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -99,7 +99,7 @@ function getEntity($element, $shared = 1, $currentobject = null) * Set entity id to use when to create an object * * @param object $currentobject Current object - * @return mixed Entity id to use ( eg. entity = '.getEntity($object) ) + * @return mixed Entity id to use ( eg. entity = '.setEntity($object) ) */ function setEntity($currentobject) { From 7ffc46e1da538cac9b848c4702f645842e7cafce Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Fri, 19 Jul 2019 09:47:05 +0200 Subject: [PATCH 010/228] FIX When we are in update mode, so we use $this->entity --- htdocs/core/lib/functions.lib.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index db32cc787e5..6e52660206f 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -5,7 +5,7 @@ * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2004 Christophe Combelles - * Copyright (C) 2005-2017 Regis Houssin + * Copyright (C) 2005-2019 Regis Houssin * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2010-2018 Juanjo Menent * Copyright (C) 2013 Cédric Salvador @@ -111,7 +111,7 @@ function setEntity($currentobject) } else { - return $conf->entity; + return ((is_object($currentobject) && $currentobject->id > 0 && $currentobject->entity > 0) ? $currentobject->entity : $conf->entity); } } From 5a385bf1ccd2731090975ac75d7bd9c734404fc4 Mon Sep 17 00:00:00 2001 From: atm-quentin Date: Thu, 18 Jul 2019 11:53:36 +0200 Subject: [PATCH 011/228] ADD extrafields on global search --- htdocs/langs/fr_FR/products.lang | 1 + htdocs/product/admin/product.php | 11 +++++++++++ htdocs/product/list.php | 16 ++++++++++++++++ 3 files changed, 28 insertions(+) diff --git a/htdocs/langs/fr_FR/products.lang b/htdocs/langs/fr_FR/products.lang index d4135c2273e..b759a023bf3 100644 --- a/htdocs/langs/fr_FR/products.lang +++ b/htdocs/langs/fr_FR/products.lang @@ -340,3 +340,4 @@ ErrorDestinationProductNotFound=Produit destination non trouvé ErrorProductCombinationNotFound=Variante du produit non trouvé ActionAvailableOnVariantProductOnly=Action disponible uniquement sur la variante du produit ProductsPricePerCustomer=Prix produit par clients +GlobalSearchOnExtrafield=Recherche globale : Appliquer la recherche sur les extrafields (Attention : les dates sont au format YYYY-MM-DD) diff --git a/htdocs/product/admin/product.php b/htdocs/product/admin/product.php index a7e45d488e1..1fb2ac73fcf 100644 --- a/htdocs/product/admin/product.php +++ b/htdocs/product/admin/product.php @@ -146,6 +146,10 @@ if ($action == 'other') $value = GETPOST('activate_useProdFournDesc', 'alpha'); $res = dolibarr_set_const($db, "PRODUIT_FOURN_TEXTS", $value, 'chaine', 0, '', $conf->entity); + + $value = GETPOST('activate_globalSearchOnExtrafield', 'alpha'); + $res = dolibarr_set_const($db, "PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD", $value,'chaine',0,'',$conf->entity); + if ($value) { $sql_test = "SELECT count(desc_fourn) as cpt FROM ".MAIN_DB_PREFIX."product_fournisseur_price WHERE 1"; $resql = $db->query($sql_test); @@ -675,6 +679,13 @@ if (! empty($conf->fournisseur->enabled)) print ''; } +print ''; +print ''.$langs->trans("GlobalSearchOnExtrafield").''; +print ''; +print $form->selectyesno("activate_globalSearchOnExtrafield", (! empty($conf->global->PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD)?$conf->global->PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD:0), 1); +print ''; +print ''; + if (! empty($conf->global->PRODUCT_CANVAS_ABILITY)) { // Add canvas feature diff --git a/htdocs/product/list.php b/htdocs/product/list.php index 1a9b5fa1f6f..54a60d8e9bf 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -148,6 +148,22 @@ if (! empty($conf->barcode->enabled)) { $fieldstosearchall['p.barcode']='Gencod'; $fieldstosearchall['pfp.barcode']='GencodBuyPrice'; } +//global search on extrafields +if(!empty($conf->global->PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD) && !empty($extralabels)) { + foreach($extralabels as $codeExtra => $labelExtra) { + $TExtraTypeNotHandled=array( + 'boolean', + 'select', + 'sellist', + 'radio', + 'checkbox', + 'chkbxlst', + 'link', + 'separate', + ); + if(!in_array($extrafields->attribute_type[$codeExtra], $TExtraTypeNotHandled)) $fieldstosearchall['ef.' . $codeExtra] = $labelExtra; + } +} if (empty($conf->global->PRODUIT_MULTIPRICES)) { From 03ed4eb14191aa33170abbc6aa8f18da7de5a17c Mon Sep 17 00:00:00 2001 From: atm-quentin Date: Fri, 19 Jul 2019 14:39:30 +0200 Subject: [PATCH 012/228] modif rowspan --- htdocs/product/admin/product.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/admin/product.php b/htdocs/product/admin/product.php index 1fb2ac73fcf..ed0bcb88e74 100644 --- a/htdocs/product/admin/product.php +++ b/htdocs/product/admin/product.php @@ -552,7 +552,7 @@ print ' '."\n"; * Other parameters */ -$rowspan = 4; +$rowspan = 5; if (! empty($conf->global->PRODUIT_MULTIPRICES) || ! empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES)) $rowspan++; if (empty($conf->global->PRODUIT_USE_SEARCH_TO_SELECT)) $rowspan++; if (! empty($conf->global->MAIN_MULTILANGS)) $rowspan++; From 0ff121e7f1d51aba44675e532d2368d9644d4ff5 Mon Sep 17 00:00:00 2001 From: atm-quentin Date: Tue, 23 Jul 2019 16:51:08 +0200 Subject: [PATCH 013/228] add some new field on global search --- htdocs/product/list.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/htdocs/product/list.php b/htdocs/product/list.php index 54a60d8e9bf..a3dac45dcab 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -136,6 +136,11 @@ $fieldstosearchall = array( 'p.label'=>"ProductLabel", 'p.description'=>"Description", "p.note"=>"Note", + "p.note_public"=>"NotePublic", + "p.url"=>"PublicUrl", + "p.accountancy_code_sell"=>"AccountancyCodeSell", + "p.accountancy_code_buy"=>"AccountancyCodeBuy", + ); // multilang if (! empty($conf->global->MAIN_MULTILANGS)) @@ -148,6 +153,7 @@ if (! empty($conf->barcode->enabled)) { $fieldstosearchall['p.barcode']='Gencod'; $fieldstosearchall['pfp.barcode']='GencodBuyPrice'; } + //global search on extrafields if(!empty($conf->global->PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD) && !empty($extralabels)) { foreach($extralabels as $codeExtra => $labelExtra) { From efd89588e56999ba34b3bf9ea48660a8aec74f81 Mon Sep 17 00:00:00 2001 From: atm-quentin Date: Thu, 25 Jul 2019 12:21:28 +0200 Subject: [PATCH 014/228] fix trans --- htdocs/langs/en_US/products.lang | 3 ++- htdocs/langs/fr_FR/products.lang | 3 +-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/langs/en_US/products.lang b/htdocs/langs/en_US/products.lang index 36ca0ede002..d9cf127b40d 100644 --- a/htdocs/langs/en_US/products.lang +++ b/htdocs/langs/en_US/products.lang @@ -340,4 +340,5 @@ ErrorCopyProductCombinations=There was an error while copying the product varian ErrorDestinationProductNotFound=Destination product not found ErrorProductCombinationNotFound=Product variant not found ActionAvailableOnVariantProductOnly=Action only available on the variant of product -ProductsPricePerCustomer=Product prices per customers \ No newline at end of file +ProductsPricePerCustomer=Product prices per customers +GlobalSearchOnExtrafield=Global search : apply on extrafields too (Warning : date format is YYYY-MM-DD) diff --git a/htdocs/langs/fr_FR/products.lang b/htdocs/langs/fr_FR/products.lang index b759a023bf3..7ab9f7a0f03 100644 --- a/htdocs/langs/fr_FR/products.lang +++ b/htdocs/langs/fr_FR/products.lang @@ -339,5 +339,4 @@ ErrorCopyProductCombinations=Une erreur s'est produite lors de la copie des vari ErrorDestinationProductNotFound=Produit destination non trouvé ErrorProductCombinationNotFound=Variante du produit non trouvé ActionAvailableOnVariantProductOnly=Action disponible uniquement sur la variante du produit -ProductsPricePerCustomer=Prix produit par clients -GlobalSearchOnExtrafield=Recherche globale : Appliquer la recherche sur les extrafields (Attention : les dates sont au format YYYY-MM-DD) +ProductsPricePerCustomer=Prix produit par clients \ No newline at end of file From 9a0e0fbdd2a03e3fc9ebf80cdbcb6303be719157 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 25 Jul 2019 18:01:16 +0200 Subject: [PATCH 015/228] Update product.php --- htdocs/product/admin/product.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/product/admin/product.php b/htdocs/product/admin/product.php index ed0bcb88e74..ae911c04b81 100644 --- a/htdocs/product/admin/product.php +++ b/htdocs/product/admin/product.php @@ -147,8 +147,8 @@ if ($action == 'other') $value = GETPOST('activate_useProdFournDesc', 'alpha'); $res = dolibarr_set_const($db, "PRODUIT_FOURN_TEXTS", $value, 'chaine', 0, '', $conf->entity); - $value = GETPOST('activate_globalSearchOnExtrafield', 'alpha'); - $res = dolibarr_set_const($db, "PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD", $value,'chaine',0,'',$conf->entity); + //$value = GETPOST('activate_globalSearchOnExtrafield', 'alpha'); + //$res = dolibarr_set_const($db, "PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD", $value,'chaine',0,'',$conf->entity); if ($value) { $sql_test = "SELECT count(desc_fourn) as cpt FROM ".MAIN_DB_PREFIX."product_fournisseur_price WHERE 1"; @@ -679,12 +679,12 @@ if (! empty($conf->fournisseur->enabled)) print ''; } -print ''; +/*print ''; print ''.$langs->trans("GlobalSearchOnExtrafield").''; print ''; print $form->selectyesno("activate_globalSearchOnExtrafield", (! empty($conf->global->PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD)?$conf->global->PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD:0), 1); print ''; -print ''; +print '';*/ if (! empty($conf->global->PRODUCT_CANVAS_ABILITY)) { From 0c6499f1935d4ed030dbd5379ab376ebe815a25c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 25 Jul 2019 18:01:47 +0200 Subject: [PATCH 016/228] Update product.php --- htdocs/product/admin/product.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/admin/product.php b/htdocs/product/admin/product.php index ae911c04b81..464ab169456 100644 --- a/htdocs/product/admin/product.php +++ b/htdocs/product/admin/product.php @@ -552,7 +552,7 @@ print ' '."\n"; * Other parameters */ -$rowspan = 5; +$rowspan = 4; if (! empty($conf->global->PRODUIT_MULTIPRICES) || ! empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES)) $rowspan++; if (empty($conf->global->PRODUIT_USE_SEARCH_TO_SELECT)) $rowspan++; if (! empty($conf->global->MAIN_MULTILANGS)) $rowspan++; From bd2f5ba037ff02c713a560f229696110fcd7257c Mon Sep 17 00:00:00 2001 From: atm-quentin Date: Fri, 26 Jul 2019 14:16:54 +0200 Subject: [PATCH 017/228] FIX Replace conf by hidden conf editable by user --- htdocs/product/admin/product.php | 9 --------- htdocs/product/list.php | 23 ++--------------------- 2 files changed, 2 insertions(+), 30 deletions(-) diff --git a/htdocs/product/admin/product.php b/htdocs/product/admin/product.php index 464ab169456..279265b8e96 100644 --- a/htdocs/product/admin/product.php +++ b/htdocs/product/admin/product.php @@ -147,9 +147,6 @@ if ($action == 'other') $value = GETPOST('activate_useProdFournDesc', 'alpha'); $res = dolibarr_set_const($db, "PRODUIT_FOURN_TEXTS", $value, 'chaine', 0, '', $conf->entity); - //$value = GETPOST('activate_globalSearchOnExtrafield', 'alpha'); - //$res = dolibarr_set_const($db, "PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD", $value,'chaine',0,'',$conf->entity); - if ($value) { $sql_test = "SELECT count(desc_fourn) as cpt FROM ".MAIN_DB_PREFIX."product_fournisseur_price WHERE 1"; $resql = $db->query($sql_test); @@ -679,12 +676,6 @@ if (! empty($conf->fournisseur->enabled)) print ''; } -/*print ''; -print ''.$langs->trans("GlobalSearchOnExtrafield").''; -print ''; -print $form->selectyesno("activate_globalSearchOnExtrafield", (! empty($conf->global->PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD)?$conf->global->PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD:0), 1); -print ''; -print '';*/ if (! empty($conf->global->PRODUCT_CANVAS_ABILITY)) { diff --git a/htdocs/product/list.php b/htdocs/product/list.php index a3dac45dcab..460e9d5ee45 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -136,10 +136,6 @@ $fieldstosearchall = array( 'p.label'=>"ProductLabel", 'p.description'=>"Description", "p.note"=>"Note", - "p.note_public"=>"NotePublic", - "p.url"=>"PublicUrl", - "p.accountancy_code_sell"=>"AccountancyCodeSell", - "p.accountancy_code_buy"=>"AccountancyCodeBuy", ); // multilang @@ -153,23 +149,8 @@ if (! empty($conf->barcode->enabled)) { $fieldstosearchall['p.barcode']='Gencod'; $fieldstosearchall['pfp.barcode']='GencodBuyPrice'; } - -//global search on extrafields -if(!empty($conf->global->PRODUIT_GLOBAL_SEARCH_ON_EXTRAFIELD) && !empty($extralabels)) { - foreach($extralabels as $codeExtra => $labelExtra) { - $TExtraTypeNotHandled=array( - 'boolean', - 'select', - 'sellist', - 'radio', - 'checkbox', - 'chkbxlst', - 'link', - 'separate', - ); - if(!in_array($extrafields->attribute_type[$codeExtra], $TExtraTypeNotHandled)) $fieldstosearchall['ef.' . $codeExtra] = $labelExtra; - } -} +// Personalized search criterias. Example: $conf->global->PRODUCT_QUICKSEARCH_ON_FIELDS = 'p.ref=ProductRef;p.label=ProductLabel' +if (! empty($conf->global->PRODUCT_QUICKSEARCH_ON_FIELDS)) $fieldstosearchall=dolExplodeIntoArray($conf->global->PRODUCT_QUICKSEARCH_ON_FIELDS); if (empty($conf->global->PRODUIT_MULTIPRICES)) { From 053ae8224b45b0940d0539e35a4b9be5bfacfab3 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Sat, 27 Jul 2019 06:36:39 +0200 Subject: [PATCH 018/228] NEW Box use fiscal year (Thanks Yves57) --- .../boxes/box_graph_invoices_permonth.php | 23 +++++++++++++--- .../box_graph_invoices_supplier_permonth.php | 23 +++++++++++++--- .../core/boxes/box_graph_orders_permonth.php | 23 +++++++++++++--- .../box_graph_orders_supplier_permonth.php | 23 +++++++++++++--- .../boxes/box_graph_propales_permonth.php | 23 +++++++++++++--- htdocs/core/class/stats.class.php | 27 +++++++++++++------ 6 files changed, 114 insertions(+), 28 deletions(-) diff --git a/htdocs/core/boxes/box_graph_invoices_permonth.php b/htdocs/core/boxes/box_graph_invoices_permonth.php index 5c747065138..ad2505374b8 100644 --- a/htdocs/core/boxes/box_graph_invoices_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_permonth.php @@ -74,6 +74,9 @@ class box_graph_invoices_permonth extends ModeleBoxes //include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; //$facturestatic=new Facture($db); + $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START-1):0; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 0; + $text = $langs->trans("BoxCustomersInvoicesPerMonth", $max); $this->info_box_head = array( 'text' => $text, @@ -129,7 +132,7 @@ class box_graph_invoices_permonth extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($shownb) { - $data1 = $stats->getNbByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0)); + $data1 = $stats->getNbByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0), $startmonth); $filenamenb = $dir."/".$prefix."invoicesnbinyear-".$endyear.".png"; if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstats&file=invoicesnbinyear-'.$endyear.'.png'; @@ -146,7 +149,13 @@ class box_graph_invoices_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - $legend[]=$i; + if ($startmonth != 0) { + $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + } + else + { + $legend[]=$i; + } $i++; } $px1->SetLegend($legend); @@ -167,7 +176,7 @@ class box_graph_invoices_permonth extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showtot) { - $data2 = $stats->getAmountByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0)); + $data2 = $stats->getAmountByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0), $startmonth); $filenamenb = $dir."/".$prefix."invoicesamountinyear-".$endyear.".png"; if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstats&file=invoicesamountinyear-'.$endyear.'.png'; @@ -184,7 +193,13 @@ class box_graph_invoices_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - $legend[]=$i; + if ($startmonth != 0) { + $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + } + else + { + $legend[]=$i; + } $i++; } $px2->SetLegend($legend); diff --git a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php index d06098daa3b..83779501df7 100644 --- a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php @@ -73,6 +73,9 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; + $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START-1):0; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 0; + $text = $langs->trans("BoxSuppliersInvoicesPerMonth", $max); $this->info_box_head = array( 'text' => $text, @@ -126,7 +129,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($shownb) { - $data1 = $stats->getNbByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0)); + $data1 = $stats->getNbByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0), $startmonth); $filenamenb = $dir."/".$prefix."invoicessuppliernbinyear-".$year.".png"; if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstats&file=invoicesnbinyear-'.$year.'.png'; @@ -143,7 +146,13 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - $legend[]=$i; + if ($startmonth != 0) { + $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + } + else + { + $legend[]=$i; + } $i++; } $px1->SetLegend($legend); @@ -164,7 +173,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showtot) { - $data2 = $stats->getAmountByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0)); + $data2 = $stats->getAmountByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0), $startmonth); $filenamenb = $dir."/".$prefix."invoicessupplieramountinyear-".$year.".png"; if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstats&file=invoicesamountinyear-'.$year.'.png'; @@ -181,7 +190,13 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - $legend[]=$i; + if ($startmonth != 0) { + $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + } + else + { + $legend[]=$i; + } $i++; } $px2->SetLegend($legend); diff --git a/htdocs/core/boxes/box_graph_orders_permonth.php b/htdocs/core/boxes/box_graph_orders_permonth.php index 8c4cb250376..8aa465782b6 100644 --- a/htdocs/core/boxes/box_graph_orders_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_permonth.php @@ -74,6 +74,9 @@ class box_graph_orders_permonth extends ModeleBoxes //include_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; //$commandestatic=new Commande($db); + $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START-1):0; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 0; + $text = $langs->trans("BoxCustomersOrdersPerMonth", $max); $this->info_box_head = array( 'text' => $text, @@ -129,7 +132,7 @@ class box_graph_orders_permonth extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($shownb) { - $data1 = $stats->getNbByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0)); + $data1 = $stats->getNbByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0), $startmonth); $filenamenb = $dir."/".$prefix."ordersnbinyear-".$endyear.".png"; if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersnbinyear-'.$endyear.'.png'; @@ -144,7 +147,13 @@ class box_graph_orders_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - $legend[]=$i; + if ($startmonth != 0) { + $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + } + else + { + $legend[]=$i; + } $i++; } $px1->SetLegend($legend); @@ -165,7 +174,7 @@ class box_graph_orders_permonth extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showtot) { - $data2 = $stats->getAmountByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0)); + $data2 = $stats->getAmountByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0), $startmonth); $filenamenb = $dir."/".$prefix."ordersamountinyear-".$endyear.".png"; if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersamountinyear-'.$endyear.'.png'; @@ -180,7 +189,13 @@ class box_graph_orders_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - $legend[]=$i; + if ($startmonth != 0) { + $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + } + else + { + $legend[]=$i; + } $i++; } $px2->SetLegend($legend); diff --git a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php index a584c7288ca..a5d5c9e6c0f 100644 --- a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php @@ -73,6 +73,9 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php'; + $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START-1):0; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 0; + $text = $langs->trans("BoxSuppliersOrdersPerMonth", $max); $this->info_box_head = array( 'text' => $text, @@ -128,7 +131,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($shownb) { - $data1 = $stats->getNbByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0)); + $data1 = $stats->getNbByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0), $startmonth); $filenamenb = $dir."/".$prefix."orderssuppliernbinyear-".$endyear.".png"; if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersnbinyear-'.$endyear.'.png'; @@ -143,7 +146,13 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - $legend[]=$i; + if ($startmonth != 0) { + $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + } + else + { + $legend[]=$i; + } $i++; } $px1->SetLegend($legend); @@ -164,7 +173,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showtot) { - $data2 = $stats->getAmountByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0)); + $data2 = $stats->getAmountByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0), $startmonth); $filenamenb = $dir."/".$prefix."orderssupplieramountinyear-".$endyear.".png"; if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersamountinyear-'.$endyear.'.png'; @@ -179,7 +188,13 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - $legend[]=$i; + if ($startmonth != 0) { + $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + } + else + { + $legend[]=$i; + } $i++; } $px2->SetLegend($legend); diff --git a/htdocs/core/boxes/box_graph_propales_permonth.php b/htdocs/core/boxes/box_graph_propales_permonth.php index 861c5086704..763cdb855f9 100644 --- a/htdocs/core/boxes/box_graph_propales_permonth.php +++ b/htdocs/core/boxes/box_graph_propales_permonth.php @@ -74,6 +74,9 @@ class box_graph_propales_permonth extends ModeleBoxes //include_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php'; //$propalstatic=new Propal($db); + $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START-1):0; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 0; + $langs->load("propal"); $text = $langs->trans("BoxProposalsPerMonth", $max); @@ -128,7 +131,7 @@ class box_graph_propales_permonth extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($shownb) { - $data1 = $stats->getNbByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0)); + $data1 = $stats->getNbByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0), $startmonth); $datatype1 = array_pad(array(), ($endyear-$startyear+1), 'bars'); $filenamenb = $dir."/".$prefix."propalsnbinyear-".$endyear.".png"; @@ -144,7 +147,13 @@ class box_graph_propales_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - $legend[]=$i; + if ($startmonth != 0) { + $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + } + else + { + $legend[]=$i; + } $i++; } $px1->SetLegend($legend); @@ -165,7 +174,7 @@ class box_graph_propales_permonth extends ModeleBoxes // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showtot) { - $data2 = $stats->getAmountByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0)); + $data2 = $stats->getAmountByMonthWithPrevYear($endyear, $startyear, (GETPOST('action', 'aZ09')==$refreshaction?-1:(3600*24)), ($WIDTH<300?2:0), $startmonth); $datatype2 = array_pad(array(), ($endyear-$startyear+1), 'bars'); //$datatype2 = array('lines','bars'); @@ -183,7 +192,13 @@ class box_graph_propales_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - $legend[]=$i; + if ($startmonth != 0) { + $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + } + else + { + $legend[]=$i; + } $i++; } $px2->SetLegend($legend); diff --git a/htdocs/core/class/stats.class.php b/htdocs/core/class/stats.class.php index 08025161a0d..b41c1d8dfa6 100644 --- a/htdocs/core/class/stats.class.php +++ b/htdocs/core/class/stats.class.php @@ -39,10 +39,12 @@ abstract class Stats * @param int $endyear Start year * @param int $startyear End year * @param int $cachedelay Delay we accept for cache file (0=No read, no save of cache, -1=No read but save) - * @param int $format 0=Label of absiss is a translated text, 1=Label of absiss is month number, 2=Label of absiss is first letter of month - * @return array Array of values + * @param int $format 0=Label of absiss is a translated text, 1=Label of absiss is month number, 2=Label of absiss is first letter of month + * @param int $startmonth month of the fiscal year start minus 1; 0=january + * @return array Array of values + */ - public function getNbByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0) + public function getNbByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0, $startmonth=0) { global $conf,$user,$langs; @@ -86,6 +88,10 @@ abstract class Stats else { $year=$startyear; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) { + $startmonth = 0; + } + if ($startmonth != 0) $year = $year - 1; while ($year <= $endyear) { $datay[$year] = $this->getNbByMonth($year, $format); @@ -96,11 +102,11 @@ abstract class Stats for ($i = 0 ; $i < 12 ; $i++) { - $data[$i][]=$datay[$endyear][$i][0]; + $data[$i][]=$datay[$endyear][($i+$startmonth)%12][0]; $year=$startyear; while($year <= $endyear) { - $data[$i][]=$datay[$year][$i][1]; + $data[$i][]=$datay[$year - (1 - (int)(($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0)][($i+$startmonth)%12][1]; $year++; } } @@ -134,9 +140,10 @@ abstract class Stats * @param int $startyear End year * @param int $cachedelay Delay we accept for cache file (0=No read, no save of cache, -1=No read but save) * @param int $format 0=Label of absiss is a translated text, 1=Label of absiss is month number, 2=Label of absiss is first letter of month + * @param int $startmonth month of the fiscal year start minus 1; 0=january * @return array Array of values */ - public function getAmountByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0) + public function getAmountByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0, $startmonth=0) { global $conf,$user,$langs; @@ -181,6 +188,10 @@ abstract class Stats else { $year=$startyear; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) { + $startmonth = 0; + } + if ($startmonth != 0) $year = $year - 1; while($year <= $endyear) { $datay[$year] = $this->getAmountByMonth($year, $format); @@ -191,11 +202,11 @@ abstract class Stats // $data = array('xval'=>array(0=>xlabel,1=>yval1,2=>yval2...),...) for ($i = 0 ; $i < 12 ; $i++) { - $data[$i][]=$datay[$endyear][$i][0]; // set label + $data[$i][]=$datay[$endyear][($i+$startmonth)%12][0]; // set label $year=$startyear; while($year <= $endyear) { - $data[$i][]=$datay[$year][$i][1]; // set yval for x=i + $data[$i][]=$datay[$year - (1 - (int)(($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0)][($i+$startmonth)%12][1]; // set yval for x=i $year++; } } From 83e2f71e079641e2ad85ab9db454418490f7f12d Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Sat, 27 Jul 2019 07:56:33 +0200 Subject: [PATCH 019/228] Fix travis --- htdocs/core/boxes/box_graph_invoices_permonth.php | 6 ++++-- .../core/boxes/box_graph_invoices_supplier_permonth.php | 6 ++++-- htdocs/core/boxes/box_graph_orders_permonth.php | 6 ++++-- htdocs/core/boxes/box_graph_orders_supplier_permonth.php | 6 ++++-- htdocs/core/boxes/box_graph_propales_permonth.php | 6 ++++-- htdocs/core/class/stats.class.php | 8 ++++---- 6 files changed, 24 insertions(+), 14 deletions(-) diff --git a/htdocs/core/boxes/box_graph_invoices_permonth.php b/htdocs/core/boxes/box_graph_invoices_permonth.php index ad2505374b8..dc02d7421df 100644 --- a/htdocs/core/boxes/box_graph_invoices_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_permonth.php @@ -149,7 +149,8 @@ class box_graph_invoices_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) { + if ($startmonth != 0) + { $legend[]=sprintf("%d/%d",$i-2001, $i-2000); } else @@ -193,7 +194,8 @@ class box_graph_invoices_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) { + if ($startmonth != 0) + { $legend[]=sprintf("%d/%d",$i-2001, $i-2000); } else diff --git a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php index 83779501df7..12836031714 100644 --- a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php @@ -146,7 +146,8 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) { + if ($startmonth != 0) + { $legend[]=sprintf("%d/%d",$i-2001, $i-2000); } else @@ -190,7 +191,8 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) { + if ($startmonth != 0) + { $legend[]=sprintf("%d/%d",$i-2001, $i-2000); } else diff --git a/htdocs/core/boxes/box_graph_orders_permonth.php b/htdocs/core/boxes/box_graph_orders_permonth.php index 8aa465782b6..b338d562132 100644 --- a/htdocs/core/boxes/box_graph_orders_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_permonth.php @@ -147,7 +147,8 @@ class box_graph_orders_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) { + if ($startmonth != 0) + { $legend[]=sprintf("%d/%d",$i-2001, $i-2000); } else @@ -189,7 +190,8 @@ class box_graph_orders_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) { + if ($startmonth != 0) + { $legend[]=sprintf("%d/%d",$i-2001, $i-2000); } else diff --git a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php index a5d5c9e6c0f..e9ec246fef0 100644 --- a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php @@ -146,7 +146,8 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) { + if ($startmonth != 0) + { $legend[]=sprintf("%d/%d",$i-2001, $i-2000); } else @@ -188,7 +189,8 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) { + if ($startmonth != 0) + { $legend[]=sprintf("%d/%d",$i-2001, $i-2000); } else diff --git a/htdocs/core/boxes/box_graph_propales_permonth.php b/htdocs/core/boxes/box_graph_propales_permonth.php index 763cdb855f9..effe625b930 100644 --- a/htdocs/core/boxes/box_graph_propales_permonth.php +++ b/htdocs/core/boxes/box_graph_propales_permonth.php @@ -147,7 +147,8 @@ class box_graph_propales_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) { + if ($startmonth != 0) + { $legend[]=sprintf("%d/%d",$i-2001, $i-2000); } else @@ -192,7 +193,8 @@ class box_graph_propales_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) { + if ($startmonth != 0) + { $legend[]=sprintf("%d/%d",$i-2001, $i-2000); } else diff --git a/htdocs/core/class/stats.class.php b/htdocs/core/class/stats.class.php index b41c1d8dfa6..2544441e16b 100644 --- a/htdocs/core/class/stats.class.php +++ b/htdocs/core/class/stats.class.php @@ -40,11 +40,11 @@ abstract class Stats * @param int $startyear End year * @param int $cachedelay Delay we accept for cache file (0=No read, no save of cache, -1=No read but save) * @param int $format 0=Label of absiss is a translated text, 1=Label of absiss is month number, 2=Label of absiss is first letter of month - * @param int $startmonth month of the fiscal year start minus 1; 0=january + * @param int $startmonth month of the fiscal year start min 1 max 12 ; if 0 = january * @return array Array of values */ - public function getNbByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0, $startmonth=0) + public function getNbByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0, $startmonth = 0) { global $conf,$user,$langs; @@ -140,10 +140,10 @@ abstract class Stats * @param int $startyear End year * @param int $cachedelay Delay we accept for cache file (0=No read, no save of cache, -1=No read but save) * @param int $format 0=Label of absiss is a translated text, 1=Label of absiss is month number, 2=Label of absiss is first letter of month - * @param int $startmonth month of the fiscal year start minus 1; 0=january + * @param int $startmonth month of the fiscal year start min 1 max 12 ; if 0 = january * @return array Array of values */ - public function getAmountByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0, $startmonth=0) + public function getAmountByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0, $startmonth = 0) { global $conf,$user,$langs; From 3e69421ec3abdc9f650873c25cfb3a3088df12b7 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Sun, 28 Jul 2019 07:33:57 +0200 Subject: [PATCH 020/228] Fix travis --- htdocs/core/boxes/box_graph_invoices_permonth.php | 4 ++-- htdocs/core/boxes/box_graph_invoices_supplier_permonth.php | 4 ++-- htdocs/core/boxes/box_graph_orders_permonth.php | 4 ++-- htdocs/core/boxes/box_graph_orders_supplier_permonth.php | 4 ++-- htdocs/core/boxes/box_graph_propales_permonth.php | 2 +- htdocs/core/class/stats.class.php | 4 ++-- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/htdocs/core/boxes/box_graph_invoices_permonth.php b/htdocs/core/boxes/box_graph_invoices_permonth.php index dc02d7421df..d33600c0fc8 100644 --- a/htdocs/core/boxes/box_graph_invoices_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_permonth.php @@ -151,7 +151,7 @@ class box_graph_invoices_permonth extends ModeleBoxes { if ($startmonth != 0) { - $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } else { @@ -196,7 +196,7 @@ class box_graph_invoices_permonth extends ModeleBoxes { if ($startmonth != 0) { - $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } else { diff --git a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php index 12836031714..d01d5b6252f 100644 --- a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php @@ -148,7 +148,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes { if ($startmonth != 0) { - $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } else { @@ -193,7 +193,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes { if ($startmonth != 0) { - $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } else { diff --git a/htdocs/core/boxes/box_graph_orders_permonth.php b/htdocs/core/boxes/box_graph_orders_permonth.php index b338d562132..f9be1c79cea 100644 --- a/htdocs/core/boxes/box_graph_orders_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_permonth.php @@ -149,7 +149,7 @@ class box_graph_orders_permonth extends ModeleBoxes { if ($startmonth != 0) { - $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } else { @@ -192,7 +192,7 @@ class box_graph_orders_permonth extends ModeleBoxes { if ($startmonth != 0) { - $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } else { diff --git a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php index e9ec246fef0..1f907fc01be 100644 --- a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php @@ -148,7 +148,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes { if ($startmonth != 0) { - $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } else { @@ -191,7 +191,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes { if ($startmonth != 0) { - $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } else { diff --git a/htdocs/core/boxes/box_graph_propales_permonth.php b/htdocs/core/boxes/box_graph_propales_permonth.php index effe625b930..7179f255add 100644 --- a/htdocs/core/boxes/box_graph_propales_permonth.php +++ b/htdocs/core/boxes/box_graph_propales_permonth.php @@ -149,7 +149,7 @@ class box_graph_propales_permonth extends ModeleBoxes { if ($startmonth != 0) { - $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } else { diff --git a/htdocs/core/class/stats.class.php b/htdocs/core/class/stats.class.php index 2544441e16b..f873b0f5deb 100644 --- a/htdocs/core/class/stats.class.php +++ b/htdocs/core/class/stats.class.php @@ -106,7 +106,7 @@ abstract class Stats $year=$startyear; while($year <= $endyear) { - $data[$i][]=$datay[$year - (1 - (int)(($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0)][($i+$startmonth)%12][1]; + $data[$i][]=$datay[$year - (1 - (int)(($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0 )][($i+$startmonth)%12][1]; $year++; } } @@ -206,7 +206,7 @@ abstract class Stats $year=$startyear; while($year <= $endyear) { - $data[$i][]=$datay[$year - (1 - (int)(($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0)][($i+$startmonth)%12][1]; // set yval for x=i + $data[$i][]=$datay[$year - (1 - (int)(($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0 )][($i+$startmonth)%12][1]; // set yval for x=i $year++; } } From 8b56ca8cd03ecf02a7b0fb7045b5f906a57d1819 Mon Sep 17 00:00:00 2001 From: John Botella Date: Mon, 29 Jul 2019 17:14:52 +0200 Subject: [PATCH 021/228] Little css and images change --- htdocs/theme/eldy/img/title_bank.png | Bin 638 -> 501 bytes htdocs/theme/eldy/img/title_commercial.png | Bin 650 -> 431 bytes htdocs/theme/eldy/img/title_home.png | Bin 474 -> 750 bytes htdocs/theme/eldy/img/title_products.png | Bin 374 -> 687 bytes htdocs/theme/eldy/theme_vars.inc.php | 4 ++-- 5 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/theme/eldy/img/title_bank.png b/htdocs/theme/eldy/img/title_bank.png index c916e89d8f65eb07682f788919715f2d829aad7b..5bd5d25a1eaf5da8b760719867d116addbb76666 100644 GIT binary patch literal 501 zcmVKQbqZWJ*-SB^#rf*p+c#me8wBh|4C|AHiY~5S%X-dE4-6Ufw@?2 z6Q>EJigKDe4LP0ysW``iQubxrKntC?yfyPxw#oNLeO!~ia%-VbJQ@2qkgehrTqvmA zKTFrIL(r|^zag`Ktz0vWU|AZ$vNVEaX#~sC2$rQ0EX&jj#3mf7i{{TC+>5OI&zJxbV3s{usHY(s2CpZfmUz+Sf=%I3r7olKp3Z&xnxL+i# r-;_KRE$$b|7CxqP8Oc#QNa literal 638 zcmV-^0)hRBP)Px#24YJ`L;wH)0002_L%V+f000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i^-6 z4KXAJaWQiM00I6!AMY|_yYV@l!P0AL_>qZ z0g#dt;G6(Mk7RC;Kt;7Q<7l;V91|yT41UrUYme=x-M4RM*J6yJs@S2zsL9vlYw{Js zZq`i^X#+ut{6b?)xDnaqXnqffL}UmwfnL?zrUjh+{O% z7ce>71PGkxLrw8XzpdBuzO$djZ9)vb3S8@g4sAyQB5jF7HLY4@ zv<EEoX&~e z2adI@NH8o@^KPwuw;)$1fZ#5n0JeS5fkhy66(*-7;P~&$P;L z8{dh)ToC`6@{LJZ3)Xk~_rO<1{E1VUdPR0)g~=ymtOWFsqWy2+NNXHBk)4;Fq>>VO zmVm71y*a)f<$U*AlhiC(xx~{7vz&=(WD*ylh diff --git a/htdocs/theme/eldy/img/title_commercial.png b/htdocs/theme/eldy/img/title_commercial.png index 6671810c5deaa7447b9e6fe41a32f6b57066791c..cbfe44fa539763fba67dabc62f1083f714ac8afb 100644 GIT binary patch literal 431 zcmV;g0Z{&lP)XN3KY{M5=Ct7dY#w-|I#$p&c3(S%xbg@q>(kqncxzm$h;Na@Y+B#h#WJN zi7{L6)jHD_%xz-23xo3(4bDSFV`^{}xxS84U=7CzmRr8v2j<>3)lM}Sn%_7#_Nv%B z8-oR&u~c2y+X!unnB3*sOR-s4U=bmhtsr{eB!AxEdBB>B6oI3ZWIW*!-!=Q+qzDYt zOe%xHR1U&mpPQr{;iGF8HN59I!FAV8D!8M)hsm~MhWz(5GQkzj+WZ9#_{57HJ{A8j ZegNWfxVi$fRiyv`002ovPDHLkV1l%2vTgtX literal 650 zcmV;50(Jd~P)Px#24YJ`L;wH)0002_L%V+f000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i^-6 z4KXu?qO`OC00Ih0L_t(o!_`^Aje{@{oIT|qO5iHMCD6f90wquaC8UIuKnbCO^L60s zfK;&e*+?A1hQNXWX&(`Gc0Afyk1;Vb&iZ`d#Lub0U$*#DA}Rso08#)Q01Ln}bEBGw znbiV-0pI|zCmeu6EuSLrG5~rQ_rrh}#`(>-t<6gst&)f=fNVj@(yF{`!4r`I@I5iC z1@Mq~Jsp5_jfge6O%izbBU*3(3JKGjml4q?GrK6=rq>QfMG2txynjWtH1|cJ)jA?d zrLVtOZ2-8LT1aB=u$7cV*DH~^A~sPsDFMq1qh6XA@B*? zoF3&cl7>V%var>n)dXMr4jmIBPNE7{#8-JB^09*s$L-wJJZOm+-EOHqW z>ib2MvXNt8Hp8^F+U#qTO(^lR=Uqaj^R;Bt+8Vrl!}=Dxf+wOpAk-oFDbJtp&HNNw zuGbhIhhlyPTSK;g17oiu{_Vkwz_Pi_&n%sEFXks%8u^%H*Z${TmkX`(L48;7iN`9$ zzg!S-&D?XUjJKLLLBrSN^7YrdfC=E8j7ekqc_ZH4dH@c8H?lh?Q7;!fZPW0dCgj%@yM{6#xJL07*qoM6N<$f{ThDTmS$7 diff --git a/htdocs/theme/eldy/img/title_home.png b/htdocs/theme/eldy/img/title_home.png index 505d18ab403a14820316e0e9e51ba20c6cec9784..e89613dcd753d62536d1192b0f4b89b0e75ab093 100644 GIT binary patch literal 750 zcmV>vum$-o5fcGq#Gi6tCJx87~+KWLHQZa}<0srTWw}5-q zf~&zvj1=j#fFC%IX@3iH4sHbCvT+NwlMT59k17OA;t7^c7UWj+1wdZlX#82MzAtWH zRmdY43IN=}{Ma`iw*$T*#n_F_R8ss{32a@)pDdjzguW{Ws9I7zSgdkgmN1#JA!bH=2G2pv|nXzw?@Qf7j zU_5ZsMH_G^*)`0Ly$f-_gtvf)F<`kb6k6M3REzdNf+5lAl4vbnmjO(o2OCmt5952l zdlw5rfDL#aX!su6Qr=w{s1PuTucCFEs0D8W-d9+i1>Av;fd=W5qTE?sF0yBNz3|C3 zhQBUlU09Q9RO&6vD~A2PYpg(LTz5i7EvQR9 zuc|U!Hqvi%9X4kHi>YyvAsa&=*=zkjsj^2i|GT-8T&V1 gR-K~T_>`)upQk|lC+m|yIRF3v07*qoM6N<$g0pf*Q~&?~ literal 474 zcmV<00VV#4P)Px#24YJ`L;wH)0002_L%V+f000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i^-6 z4KoLpAR>bR00CM_L_t(o!|j>dZG$irhQCwwy^N3z!Ukc4jKBu%2+anJkWt76bOX8p z8=Srvi69aV#9XZUNWX+EUp~;e*jQARQ0SeAeKJOMS`t7Qk8OG+o z7jSeAobo9QcXKZV@A^K2e)$Ew!viT$8lk(&HiHKe z;5q}kRRg4}!@EFiUI1@Z0m<6%K2=(I_E@A&B2t80VLwIW>@Ckbm#J288*>0#pc7YB zbpzGU0vJPeY&HTP4d6%6hna= zJNRRCn+PA_Bm5%pRj}}?+8FlZzOD3`=g;n!NU{)Y4P4r1>phjkOXQ904^L8r#{ED; Q#Q*>R07*qoM6N<$f*aez@c;k- diff --git a/htdocs/theme/eldy/img/title_products.png b/htdocs/theme/eldy/img/title_products.png index 100edf445f129bfc7d97186aea3337af6f07f4b2..c608a2c7a8607a03af4088de526a0335749ae105 100644 GIT binary patch literal 687 zcmV;g0#N;lP)kfMciIoofjr%x>wRM8+#uz?yfy%Sb7{~sq zpf=zP=1M^2**q>t$|6YpUSX&WTmt)W1s_WWT)?H&7D~>2kIUGT2elsO@wBAl@0i4K zNygh6O0P|(W6JoP!#S*LJKKn7C7sOTEQa%*IHTco>}<&xk0rHlyx@dIT*cl3PNw$iv-XOqkS${@h3y}$@Ir8bgYD>}c0TU7#P1GNTxux>2T0Ygh;RRN1EuG#_1wx?PF?_zra zsGfj%TU`u2!mCgxRRTuQf51@vOMqQjnv!1?tEnbV<9U~R%T2tkm*=mtV3XL@Wz6d) zuGdMW7+703NILw4_>For2W-CJ{F^%V>cg0>0I)3BG!Eq_HTlQ)AOhe;oWPTU<7Xrv zxP^5@SVn)u%2+?e%4l%L>H>`p77Mg;ut7m<2kTTGXcVwUsDq3S;8=Qo4-aEF{R2xY V!0-roM&1Ab002ovPDHLkV1h=`GfMyf literal 374 zcmeAS@N?(olHy`uVBq!ia0vp^`arDB!3HE>Y`eG%NHG=%xjQkeJ16rJ$YD$Jc6R~N zK=9LfcRi5eEbxddW?zuQ z;~{U815aywFY^x0zJk0%Tz(8W2RM2Tu)SjId%%(R;m_ietw&<^$T6O&KFR8I>7Kjh z(xVd}}!@Z;ra>sqxe8_%!lYXGq?-l!hhBmKW ze6@b|(kU;lI(Np&I=uZLyzk>uC3%^`&fM2db(=0NQ_h^vy5Ka6rSG3RA diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index f02c25113ef..c1ea24c3070 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -38,9 +38,9 @@ $theme_bgcoloronglet = array(hexdec('DE'),hexdec('E7'),hexdec('EC')); // Colors $colorbackhmenu1='60,70,100'; // topmenu -$colorbackvmenu1='248,248,248'; // vmenu +$colorbackvmenu1='249,250,252'; // vmenu $colortopbordertitle1='200,200,200'; // top border of title -$colorbacktitle1='220,220,223'; // title of tables,list +$colorbacktitle1='233,234,238'; // title of tables,list $colorbacktabcard1='255,255,255'; // card $colorbacktabactive='234,234,234'; $colorbacklineimpair1='255,255,255'; // line impair From 8228979e6777fc71e3aaaedf884637713b401632 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Tue, 30 Jul 2019 09:18:18 +0200 Subject: [PATCH 022/228] Fix travis --- htdocs/core/class/stats.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/class/stats.class.php b/htdocs/core/class/stats.class.php index f873b0f5deb..a15800f8ce6 100644 --- a/htdocs/core/class/stats.class.php +++ b/htdocs/core/class/stats.class.php @@ -106,7 +106,7 @@ abstract class Stats $year=$startyear; while($year <= $endyear) { - $data[$i][]=$datay[$year - (1 - (int)(($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0 )][($i+$startmonth)%12][1]; + $data[$i][]=$datay[$year - (1 - (int) (($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0)][($i+$startmonth)%12][1]; $year++; } } @@ -206,7 +206,7 @@ abstract class Stats $year=$startyear; while($year <= $endyear) { - $data[$i][]=$datay[$year - (1 - (int)(($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0 )][($i+$startmonth)%12][1]; // set yval for x=i + $data[$i][]=$datay[$year - (1 - (int) (($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0)][($i+$startmonth)%12][1]; // set yval for x=i $year++; } } From b146004966870bca95acbd269b0563932a5e8356 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Tue, 30 Jul 2019 11:06:40 +0200 Subject: [PATCH 023/228] Fix travis --- htdocs/core/boxes/box_graph_propales_permonth.php | 2 +- htdocs/core/class/stats.class.php | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/core/boxes/box_graph_propales_permonth.php b/htdocs/core/boxes/box_graph_propales_permonth.php index 7179f255add..78cbadc6fb2 100644 --- a/htdocs/core/boxes/box_graph_propales_permonth.php +++ b/htdocs/core/boxes/box_graph_propales_permonth.php @@ -195,7 +195,7 @@ class box_graph_propales_permonth extends ModeleBoxes { if ($startmonth != 0) { - $legend[]=sprintf("%d/%d",$i-2001, $i-2000); + $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } else { diff --git a/htdocs/core/class/stats.class.php b/htdocs/core/class/stats.class.php index a15800f8ce6..85a6f43ed4d 100644 --- a/htdocs/core/class/stats.class.php +++ b/htdocs/core/class/stats.class.php @@ -106,7 +106,7 @@ abstract class Stats $year=$startyear; while($year <= $endyear) { - $data[$i][]=$datay[$year - (1 - (int) (($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0)][($i+$startmonth)%12][1]; + $data[$i][]=$datay[$year - (1 - ((int) ($i+$startmonth)/12) + ($startmonth == 0 ? 1 : 0))][($i+$startmonth)%12][1]; $year++; } } @@ -206,7 +206,7 @@ abstract class Stats $year=$startyear; while($year <= $endyear) { - $data[$i][]=$datay[$year - (1 - (int) (($i+$startmonth)/12)) + ($startmonth == 0 ? 1 : 0)][($i+$startmonth)%12][1]; // set yval for x=i + $data[$i][]=$datay[$year - (1 - ((int) ($i+$startmonth)/12) + ($startmonth == 0 ? 1 : 0))][($i+$startmonth)%12][1]; // set yval for x=i $year++; } } From f64092a1e84896b91d54c56cd7d9b49936bca74f Mon Sep 17 00:00:00 2001 From: atm-arnaud Date: Thu, 1 Aug 2019 11:00:49 +0200 Subject: [PATCH 024/228] FIX order or proposals billed if both workflow conf activated --- .../interface_20_modWorkflow_WorkflowManager.class.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php b/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php index 2c7ee724d2f..583701f7bc9 100644 --- a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php +++ b/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php @@ -121,7 +121,8 @@ class InterfaceWorkflowManager extends DolibarrTriggers if ($action == 'BILL_VALIDATE') { dol_syslog( "Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id ); - + $ret = null; + // First classify billed the order to allow the proposal classify process if (! empty($conf->commande->enabled) && ! empty($conf->workflow->enabled) && ! empty($conf->global->WORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER)) { @@ -142,7 +143,6 @@ class InterfaceWorkflowManager extends DolibarrTriggers } } } - return $ret; } // Second classify billed the proposal. @@ -165,8 +165,9 @@ class InterfaceWorkflowManager extends DolibarrTriggers } } } - return $ret; } + + return $ret; } // classify billed order & billed propososal From cd0d5c41f5d02952ba556f9487d03f3281024636 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 1 Aug 2019 16:37:40 +0200 Subject: [PATCH 025/228] Update interface_20_modWorkflow_WorkflowManager.class.php --- .../triggers/interface_20_modWorkflow_WorkflowManager.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php b/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php index 583701f7bc9..8c849f5fa40 100644 --- a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php +++ b/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php @@ -121,7 +121,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers if ($action == 'BILL_VALIDATE') { dol_syslog( "Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id ); - $ret = null; + $ret = 0; // First classify billed the order to allow the proposal classify process if (! empty($conf->commande->enabled) && ! empty($conf->workflow->enabled) && ! empty($conf->global->WORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER)) From 7a2e08a6812bec0ecfde8355ea999558f8dbf92e Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Fri, 2 Aug 2019 11:41:40 +0200 Subject: [PATCH 026/228] Fix author in message / ticket API --- htdocs/ticket/class/api_tickets.class.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/htdocs/ticket/class/api_tickets.class.php b/htdocs/ticket/class/api_tickets.class.php index 060ddc36ff3..c23ec3da151 100644 --- a/htdocs/ticket/class/api_tickets.class.php +++ b/htdocs/ticket/class/api_tickets.class.php @@ -160,15 +160,15 @@ class Tickets extends DolibarrApi $num = count($this->ticket->cache_msgs_ticket); $i = 0; while ($i < $num) { - if ($this->ticket->cache_msgs_ticket[$i]['fk_user_action'] > 0) { + if ($this->ticket->cache_msgs_ticket[$i]['fk_user_author'] > 0) { $user_action = new User($this->db); - $user_action->fetch($this->ticket->cache_msgs_ticket[$i]['fk_user_action']); + $user_action->fetch($this->ticket->cache_msgs_ticket[$i]['fk_user_author']); } // Now define messages $messages[] = array( 'id' => $this->ticket->cache_msgs_ticket[$i]['id'], - 'fk_user_action' => $this->ticket->cache_msgs_ticket[$i]['fk_user_action'], + 'fk_user_action' => $this->ticket->cache_msgs_ticket[$i]['fk_user_author'], 'fk_user_action_socid' => $user_action->socid, 'fk_user_action_string' => dolGetFirstLastname($user_action->firstname, $user_action->lastname), 'message' => $this->ticket->cache_msgs_ticket[$i]['message'], @@ -195,6 +195,7 @@ class Tickets extends DolibarrApi // Now define messages $history[] = array( 'id' => $this->ticket->cache_logs_ticket[$i]['id'], + 'fk_user_author' => $this->ticket->cache_msgs_ticket[$i]['fk_user_author'], 'fk_user_action' => $this->ticket->cache_logs_ticket[$i]['fk_user_create'], 'fk_user_action_string' => dolGetFirstLastname($user_action->firstname, $user_action->lastname), 'message' => $this->ticket->cache_logs_ticket[$i]['message'], From 03a2377abc7c1f0eab24452f98dcf02419edfba1 Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Fri, 2 Aug 2019 12:31:24 +0200 Subject: [PATCH 027/228] Fix: allow access from any other class that inherits Form class. --- htdocs/core/class/html.form.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 713b18582eb..b9b84fb0e4a 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -307,7 +307,7 @@ class Form * @param mixed $custommsg String or Array of custom messages : eg array('success' => 'MyMessage', 'error' => 'MyMessage') * @return string HTML edit in place */ - private function editInPlace($object, $value, $htmlname, $condition, $inputType = 'textarea', $editvalue = null, $extObject = null, $custommsg = null) + protected function editInPlace($object, $value, $htmlname, $condition, $inputType = 'textarea', $editvalue = null, $extObject = null, $custommsg = null) { global $conf; @@ -2362,7 +2362,7 @@ class Form * @param string $filterkey Filter key to highlight * @return void */ - private function constructProductListOption(&$objp, &$opt, &$optJson, $price_level, $selected, $hidepriceinlabel = 0, $filterkey = '') + protected function constructProductListOption(&$objp, &$opt, &$optJson, $price_level, $selected, $hidepriceinlabel = 0, $filterkey = '') { global $langs, $conf, $user, $db; From 74e3a423fdea0c85d1e1e6ee9bc8bceff710df67 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Fri, 2 Aug 2019 12:35:00 +0200 Subject: [PATCH 028/228] Fix document list for products in API --- htdocs/api/class/api_documents.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/api/class/api_documents.class.php b/htdocs/api/class/api_documents.class.php index f4a7084b336..48d6bf5b903 100644 --- a/htdocs/api/class/api_documents.class.php +++ b/htdocs/api/class/api_documents.class.php @@ -368,7 +368,7 @@ class Documents extends DolibarrApi throw new RestException(404, 'Product not found'); } - $upload_dir = $conf->product->dir_output . "/" . get_exdir(0, 0, 0, 1, $object, 'product'); + $upload_dir = $conf->product->multidir_output[$object->entity].'/'.get_exdir(0, 0, 0, 0, $object, 'product').dol_sanitizeFileName($object->ref); } elseif ($modulepart == 'agenda' || $modulepart == 'action' || $modulepart == 'event') { From 3a0c1954d6358c5e1909871ba146b68559d01c51 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Fri, 2 Aug 2019 13:23:15 +0200 Subject: [PATCH 029/228] Fix application_fee_amount need fix in v10 too --- htdocs/stripe/class/stripe.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/stripe/class/stripe.class.php b/htdocs/stripe/class/stripe.class.php index c731637fce6..69c422c8c7c 100644 --- a/htdocs/stripe/class/stripe.class.php +++ b/htdocs/stripe/class/stripe.class.php @@ -403,7 +403,7 @@ class Stripe extends CommonObject if ($conf->entity!=$conf->global->STRIPECONNECT_PRINCIPAL && $stripefee > 0) { - $dataforintent["application_fee"] = $stripefee; + $dataforintent["application_fee_amount"] = $stripefee; } if ($usethirdpartyemailforreceiptemail && is_object($object) && $object->thirdparty->email) { @@ -730,7 +730,7 @@ class Stripe extends CommonObject ); if ($conf->entity!=$conf->global->STRIPECONNECT_PRINCIPAL && $stripefee > 0) { - $paymentarray["application_fee"] = $stripefee; + $paymentarray["application_fee_amount"] = $stripefee; } if ($societe->email && $usethirdpartyemailforreceiptemail) { From 2d34a0c4c164d3caa5c9f5c3a5355d064a051f8b Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Fri, 2 Aug 2019 14:48:45 +0200 Subject: [PATCH 030/228] Fix table in admin stripe.php --- htdocs/stripe/admin/stripe.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/stripe/admin/stripe.php b/htdocs/stripe/admin/stripe.php index c2b2143f277..02039f3edc2 100644 --- a/htdocs/stripe/admin/stripe.php +++ b/htdocs/stripe/admin/stripe.php @@ -254,7 +254,7 @@ if (empty($conf->stripeconnect->enabled)) print price($conf->global->STRIPE_APPLICATION_FEE_PERCENT); print '% + '; print price($conf->global->STRIPE_APPLICATION_FEE); - print ' '.$langs->getCurrencySymbol($conf->currency).' '.$langs->trans("minimum").' '.price($conf->global->STRIPE_APPLICATION_FEE_MINIMAL).' '.$langs->getCurrencySymbol($conf->currency).' '; + print ' '.$langs->getCurrencySymbol($conf->currency).' '.$langs->trans("minimum").' '.price($conf->global->STRIPE_APPLICATION_FEE_MINIMAL).' '.$langs->getCurrencySymbol($conf->currency); print ''; } From 7eb48a3f9ce8ff8ff452dfcef059c1bb16c7f22e Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Sat, 3 Aug 2019 06:04:42 +0200 Subject: [PATCH 031/228] Fix month of the fiscal year start min 1 max 12 / january = 1 --- .../boxes/box_graph_invoices_permonth.php | 8 ++--- .../box_graph_invoices_supplier_permonth.php | 8 ++--- .../core/boxes/box_graph_orders_permonth.php | 8 ++--- .../box_graph_orders_supplier_permonth.php | 8 ++--- .../boxes/box_graph_propales_permonth.php | 8 ++--- htdocs/core/class/stats.class.php | 35 +++++++++---------- 6 files changed, 37 insertions(+), 38 deletions(-) diff --git a/htdocs/core/boxes/box_graph_invoices_permonth.php b/htdocs/core/boxes/box_graph_invoices_permonth.php index d33600c0fc8..6e5afe5df99 100644 --- a/htdocs/core/boxes/box_graph_invoices_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_permonth.php @@ -74,8 +74,8 @@ class box_graph_invoices_permonth extends ModeleBoxes //include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; //$facturestatic=new Facture($db); - $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START-1):0; - if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 0; + $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START) : 1; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 1; $text = $langs->trans("BoxCustomersInvoicesPerMonth", $max); $this->info_box_head = array( @@ -149,7 +149,7 @@ class box_graph_invoices_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) + if ($startmonth != 1) { $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } @@ -194,7 +194,7 @@ class box_graph_invoices_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) + if ($startmonth != 1) { $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } diff --git a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php index d01d5b6252f..df4f4afc146 100644 --- a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php @@ -73,8 +73,8 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; - $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START-1):0; - if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 0; + $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START) : 1; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 1; $text = $langs->trans("BoxSuppliersInvoicesPerMonth", $max); $this->info_box_head = array( @@ -146,7 +146,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) + if ($startmonth != 1) { $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } @@ -191,7 +191,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) + if ($startmonth != 1) { $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } diff --git a/htdocs/core/boxes/box_graph_orders_permonth.php b/htdocs/core/boxes/box_graph_orders_permonth.php index f9be1c79cea..b530b4ea268 100644 --- a/htdocs/core/boxes/box_graph_orders_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_permonth.php @@ -74,8 +74,8 @@ class box_graph_orders_permonth extends ModeleBoxes //include_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; //$commandestatic=new Commande($db); - $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START-1):0; - if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 0; + $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START) : 1; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 1; $text = $langs->trans("BoxCustomersOrdersPerMonth", $max); $this->info_box_head = array( @@ -147,7 +147,7 @@ class box_graph_orders_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) + if ($startmonth != 1) { $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } @@ -190,7 +190,7 @@ class box_graph_orders_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) + if ($startmonth != 1) { $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } diff --git a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php index 1f907fc01be..8359ddbe070 100644 --- a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php @@ -73,8 +73,8 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php'; - $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START-1):0; - if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 0; + $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START) : 1; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 1; $text = $langs->trans("BoxSuppliersOrdersPerMonth", $max); $this->info_box_head = array( @@ -146,7 +146,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) + if ($startmonth != 1) { $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } @@ -189,7 +189,7 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) + if ($startmonth != 1) { $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } diff --git a/htdocs/core/boxes/box_graph_propales_permonth.php b/htdocs/core/boxes/box_graph_propales_permonth.php index 78cbadc6fb2..75673ee3fce 100644 --- a/htdocs/core/boxes/box_graph_propales_permonth.php +++ b/htdocs/core/boxes/box_graph_propales_permonth.php @@ -74,8 +74,8 @@ class box_graph_propales_permonth extends ModeleBoxes //include_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php'; //$propalstatic=new Propal($db); - $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START-1):0; - if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 0; + $startmonth = $conf->global->SOCIETE_FISCAL_MONTH_START?($conf->global->SOCIETE_FISCAL_MONTH_START) : 1; + if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) $startmonth = 1; $langs->load("propal"); @@ -147,7 +147,7 @@ class box_graph_propales_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) + if ($startmonth != 1) { $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } @@ -193,7 +193,7 @@ class box_graph_propales_permonth extends ModeleBoxes $i=$startyear;$legend=array(); while ($i <= $endyear) { - if ($startmonth != 0) + if ($startmonth != 1) { $legend[]=sprintf("%d/%d", $i-2001, $i-2000); } diff --git a/htdocs/core/class/stats.class.php b/htdocs/core/class/stats.class.php index 85a6f43ed4d..8df81bd4495 100644 --- a/htdocs/core/class/stats.class.php +++ b/htdocs/core/class/stats.class.php @@ -40,11 +40,11 @@ abstract class Stats * @param int $startyear End year * @param int $cachedelay Delay we accept for cache file (0=No read, no save of cache, -1=No read but save) * @param int $format 0=Label of absiss is a translated text, 1=Label of absiss is month number, 2=Label of absiss is first letter of month - * @param int $startmonth month of the fiscal year start min 1 max 12 ; if 0 = january + * @param int $startmonth month of the fiscal year start min 1 max 12 ; if 1 = january * @return array Array of values */ - public function getNbByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0, $startmonth = 0) + public function getNbByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0, $startmonth = 1) { global $conf,$user,$langs; @@ -88,10 +88,8 @@ abstract class Stats else { $year=$startyear; - if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) { - $startmonth = 0; - } - if ($startmonth != 0) $year = $year - 1; + $sm = $startmonth - 1; + if ($sm != 0) $year = $year - 1; while ($year <= $endyear) { $datay[$year] = $this->getNbByMonth($year, $format); @@ -102,11 +100,11 @@ abstract class Stats for ($i = 0 ; $i < 12 ; $i++) { - $data[$i][]=$datay[$endyear][($i+$startmonth)%12][0]; + $data[$i][]=$datay[$endyear][($i+$sm)%12][0]; $year=$startyear; while($year <= $endyear) { - $data[$i][]=$datay[$year - (1 - ((int) ($i+$startmonth)/12) + ($startmonth == 0 ? 1 : 0))][($i+$startmonth)%12][1]; + $data[$i][]=$datay[$year - (1 - ((int) ($i+$sm)/12)) + ($sm == 0 ? 1 : 0)][($i+$sm)%12][1]; $year++; } } @@ -140,10 +138,10 @@ abstract class Stats * @param int $startyear End year * @param int $cachedelay Delay we accept for cache file (0=No read, no save of cache, -1=No read but save) * @param int $format 0=Label of absiss is a translated text, 1=Label of absiss is month number, 2=Label of absiss is first letter of month - * @param int $startmonth month of the fiscal year start min 1 max 12 ; if 0 = january + * @param int $startmonth month of the fiscal year start min 1 max 12 ; if 1 = january * @return array Array of values */ - public function getAmountByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0, $startmonth = 0) + public function getAmountByMonthWithPrevYear($endyear, $startyear, $cachedelay = 0, $format = 0, $startmonth = 1) { global $conf,$user,$langs; @@ -188,10 +186,8 @@ abstract class Stats else { $year=$startyear; - if (empty($conf->global->GRAPH_USE_FISCAL_YEAR)) { - $startmonth = 0; - } - if ($startmonth != 0) $year = $year - 1; + $sm = $startmonth - 1; + if ($sm != 0) $year = $year - 1; while($year <= $endyear) { $datay[$year] = $this->getAmountByMonth($year, $format); @@ -202,11 +198,11 @@ abstract class Stats // $data = array('xval'=>array(0=>xlabel,1=>yval1,2=>yval2...),...) for ($i = 0 ; $i < 12 ; $i++) { - $data[$i][]=$datay[$endyear][($i+$startmonth)%12][0]; // set label + $data[$i][]=$datay[$endyear][($i+$sm)%12][0]; // set label $year=$startyear; while($year <= $endyear) { - $data[$i][]=$datay[$year - (1 - ((int) ($i+$startmonth)/12) + ($startmonth == 0 ? 1 : 0))][($i+$startmonth)%12][1]; // set yval for x=i + $data[$i][]=$datay[$year - (1 - ((int) ($i+$sm)/12)) + ($sm == 0 ? 1 : 0)][($i+$sm)%12][1]; // set yval for x=i $year++; } } @@ -422,7 +418,8 @@ abstract class Stats // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** - * Renvoie le nombre de proposition par mois pour une annee donnee + * Renvoie le nombre de documents par mois pour une annee donnee + * Return number of documents per month for a given year * * @param int $year Year * @param string $sql SQL @@ -481,7 +478,8 @@ abstract class Stats // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** - * Renvoie le nombre d'element par mois pour une annee donnee + * Renvoie le montant totalise par mois pour une annee donnee + * Return the amount per month for a given year * * @param int $year Year * @param string $sql SQL @@ -538,6 +536,7 @@ abstract class Stats // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Renvoie le montant moyen par mois pour une annee donnee + * Return the amount average par month for a given year * * @param int $year Year * @param string $sql SQL From 13eef54392e8a5f415c4c2eef0bdb8e3b0350ca4 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 3 Aug 2019 12:31:13 +0200 Subject: [PATCH 032/228] Fix round for application fee in stripe --- htdocs/stripe/class/stripe.class.php | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/htdocs/stripe/class/stripe.class.php b/htdocs/stripe/class/stripe.class.php index c731637fce6..28ba74fa91b 100644 --- a/htdocs/stripe/class/stripe.class.php +++ b/htdocs/stripe/class/stripe.class.php @@ -319,14 +319,14 @@ class Stripe extends CommonObject if (! in_array($currency_code, $arrayzerounitcurrency)) $stripeamount = $amount * 100; else $stripeamount = $amount; - $fee = round($amount * ($conf->global->STRIPE_APPLICATION_FEE_PERCENT / 100) + $conf->global->STRIPE_APPLICATION_FEE); + $fee = $amount * ($conf->global->STRIPE_APPLICATION_FEE_PERCENT / 100) + $conf->global->STRIPE_APPLICATION_FEE; if ($fee >= $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL && $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL > $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) { - $fee = round($conf->global->STRIPE_APPLICATION_FEE_MAXIMAL); + $fee = $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL; } elseif ($fee < $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) { - $fee = round($conf->global->STRIPE_APPLICATION_FEE_MINIMAL); + $fee = $conf->global->STRIPE_APPLICATION_FEE_MINIMAL; } - if (! in_array($currency_code, $arrayzerounitcurrency)) $stripefee = $fee * 100; - else $stripefee = $fee; + if (! in_array($currency, $arrayzerounitcurrency)) $stripefee = round($fee * 100); + else $stripefee = round($fee); $paymentintent = null; @@ -708,15 +708,14 @@ class Stripe extends CommonObject $charge = \Stripe\Charge::create($paymentarray, array("idempotency_key" => "$description")); } } else { - $fee = round($amount * ($conf->global->STRIPE_APPLICATION_FEE_PERCENT / 100) + $conf->global->STRIPE_APPLICATION_FEE); - if ($fee >= $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL && $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL > $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) { - $fee = round($conf->global->STRIPE_APPLICATION_FEE_MAXIMAL); - } - elseif ($fee < $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) { - $fee = round($conf->global->STRIPE_APPLICATION_FEE_MINIMAL); - } - if (! in_array($currency, $arrayzerounitcurrency)) $stripefee = $fee * 100; - else $stripefee = $fee; + $fee = $amount * ($conf->global->STRIPE_APPLICATION_FEE_PERCENT / 100) + $conf->global->STRIPE_APPLICATION_FEE; + if ($fee >= $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL && $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL > $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) { + $fee = $conf->global->STRIPE_APPLICATION_FEE_MAXIMAL; + } elseif ($fee < $conf->global->STRIPE_APPLICATION_FEE_MINIMAL) { + $fee = $conf->global->STRIPE_APPLICATION_FEE_MINIMAL; + } + if (! in_array($currency, $arrayzerounitcurrency)) $stripefee = round($fee * 100); + else $stripefee = round($fee); $paymentarray = array( "amount" => "$stripeamount", From d30ce126e0838cb7f174cb88dd2be842f83e08f3 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 3 Aug 2019 13:00:52 +0200 Subject: [PATCH 033/228] Fix update stripe api for more compliance to API --- htdocs/stripe/config.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/stripe/config.php b/htdocs/stripe/config.php index 5638a10d332..17ca74b7955 100644 --- a/htdocs/stripe/config.php +++ b/htdocs/stripe/config.php @@ -55,4 +55,4 @@ else \Stripe\Stripe::setApiKey($stripearrayofkeys['secret_key']); \Stripe\Stripe::setAppInfo("Dolibarr Stripe", DOL_VERSION, "https://www.dolibarr.org"); // add dolibarr version -\Stripe\Stripe::setApiVersion("2019-03-14"); // force version API +\Stripe\Stripe::setApiVersion("2019-05-16"); // force version API From 07cc21a113187c85887bdfe9844be9d370697067 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 3 Aug 2019 20:35:53 +0200 Subject: [PATCH 034/228] Fix display payment intent in stripe's charge list --- htdocs/stripe/charge.php | 47 +++++++++++++++++++++++----------------- 1 file changed, 27 insertions(+), 20 deletions(-) diff --git a/htdocs/stripe/charge.php b/htdocs/stripe/charge.php index e8823119e30..80c633b0254 100644 --- a/htdocs/stripe/charge.php +++ b/htdocs/stripe/charge.php @@ -121,6 +121,31 @@ if (!$rowid) //print $list; foreach ($list->data as $charge) { + if ($charge->refunded=='1'){ + $status = img_picto($langs->trans("refunded"), 'statut6'); + } elseif ($charge->paid=='1'){ + $status = img_picto($langs->trans("".$charge->status.""), 'statut4'); + } else { + $label="Message: ".$charge->failure_message."
"; + $label.="Réseau: ".$charge->outcome->network_status."
"; + $label.="Statut: ".$langs->trans("".$charge->outcome->seller_message.""); + $status = $form->textwithpicto(img_picto($langs->trans("".$charge->status.""), 'statut8'), $label, 1); + } + + if ($charge->payment_method_details->type=='card') + { + $type = $langs->trans("card"); + } + elseif ($charge->source->type=='card'){ + $type = $langs->trans("card"); + } elseif ($charge->payment_method_details->type=='three_d_secure'){ + $type = $langs->trans("card3DS"); + } + + if (! empty($charge->payment_intent)) { + $charge = \Stripe\PaymentIntent::retrieve($charge->payment_intent); + } + // The metadata FULLTAG is defined by the online payment page $FULLTAG=$charge->metadata->FULLTAG; @@ -205,31 +230,13 @@ if (!$rowid) print ''.dol_print_date($charge->created, '%d/%m/%Y %H:%M')."\n"; // Type print ''; - if ($charge->source->object=='card') - { - print $langs->trans("card"); - } - elseif ($charge->source->type=='card'){ - print $langs->trans("card"); - } elseif ($charge->source->type=='three_d_secure'){ - print $langs->trans("card3DS"); - } + print $type; print ''; // Amount print ''.price(($charge->amount-$charge->amount_refunded)/100, 0, '', 1, - 1, - 1, strtoupper($charge->currency)).""; // Status print ''; - if ($charge->refunded=='1'){ - print img_picto($langs->trans("refunded"), 'statut6'); - } elseif ($charge->paid=='1'){ - - print img_picto($langs->trans("".$charge->status.""), 'statut4'); - } else { - $label="Message: ".$charge->failure_message."
"; - $label.="Réseau: ".$charge->outcome->network_status."
"; - $label.="Statut: ".$langs->trans("".$charge->outcome->seller_message.""); - print $form->textwithpicto(img_picto($langs->trans("".$charge->status.""), 'statut8'), $label, 1); - } + print $status; print "\n"; print "\n"; From 7f42380f834b8b8dd69f80b3885a440b47a5b7df Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 3 Aug 2019 20:53:18 +0200 Subject: [PATCH 035/228] FIX Fatal situation if payment removed on expense report. Action set_unpaid was not available. --- htdocs/expensereport/card.php | 40 +++++++++++++++++-- .../class/expensereport.class.php | 4 +- htdocs/langs/en_US/bills.lang | 1 + htdocs/langs/fr_FR/bills.lang | 1 + 4 files changed, 41 insertions(+), 5 deletions(-) diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index b57de324df6..14e86c49cb6 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -989,6 +989,34 @@ if (empty($reshook)) } } + if ($action == 'set_unpaid' && $id > 0 && $user->rights->expensereport->to_paid) + { + $object = new ExpenseReport($db); + $object->fetch($id); + + $result = $object->set_unpaid($user); + + if ($result > 0) + { + // Define output language + if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) + { + $outputlangs = $langs; + $newlang = ''; + if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) $newlang = GETPOST('lang_id', 'aZ09'); + if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $object->thirdparty->default_lang; + if (! empty($newlang)) { + $outputlangs = new Translate("", $conf); + $outputlangs->setDefaultLang($newlang); + } + $model=$object->modelpdf; + $ret = $object->fetch($id); // Reload to get new records + + $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); + } + } + } + if ($action == 'set_paid' && $id > 0 && $user->rights->expensereport->to_paid) { $object = new ExpenseReport($db); @@ -2373,8 +2401,8 @@ if ($action != 'create' && $action != 'edit') } - // If status is Appoved - // -------------------- + // If status is Approved + // --------------------- if ($user->rights->expensereport->approve && $object->fk_statut == 5) { @@ -2418,9 +2446,15 @@ if ($action != 'create' && $action != 'edit') print ''; } + if ($user->rights->expensereport->to_paid && $object->paid && $object->fk_statut == ExpenseReport::STATUS_CLOSED) + { + // Set unpaid + print ''; + } + // Clone if ($user->rights->expensereport->creer) { - print ''; + print ''; } /* If draft, validated, cancel, and user can create, he can always delete its card before it is approved */ diff --git a/htdocs/expensereport/class/expensereport.class.php b/htdocs/expensereport/class/expensereport.class.php index aec06b7972b..7dc986df07b 100644 --- a/htdocs/expensereport/class/expensereport.class.php +++ b/htdocs/expensereport/class/expensereport.class.php @@ -1381,12 +1381,12 @@ class ExpenseReport extends CommonObject // phpcs:enable $error = 0; - if ($this->fk_c_deplacement_statuts != 5) + if ($this->paid) { $this->db->begin(); $sql = 'UPDATE '.MAIN_DB_PREFIX.$this->table_element; - $sql.= " SET fk_statut = 5"; + $sql.= " SET paid = 0"; $sql.= ' WHERE rowid = '.$this->id; dol_syslog(get_class($this)."::set_unpaid sql=".$sql, LOG_DEBUG); diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index 07370233e6c..393eebae4e4 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -94,6 +94,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' diff --git a/htdocs/langs/fr_FR/bills.lang b/htdocs/langs/fr_FR/bills.lang index 476298a9206..984617e1f09 100644 --- a/htdocs/langs/fr_FR/bills.lang +++ b/htdocs/langs/fr_FR/bills.lang @@ -95,6 +95,7 @@ HelpPaymentHigherThanReminderToPay=Attention, le montant de paiement pour une ou HelpPaymentHigherThanReminderToPaySupplier=Attention, le montant de paiement pour une ou plusieurs factures est supérieur au reste à payer.
Corrigez votre saisie, sinon, confirmez et pensez à créer un avoir pour l'excédent pour chaque facture surpayée. ClassifyPaid=Classer 'Payée' ClassifyPaidPartially=Classer 'Payée partiellement' +ClassifyUnPaid=Classer 'Non payée' ClassifyCanceled=Classer 'Abandonnée' ClassifyClosed=Classer 'Fermée' ClassifyUnBilled=Classer 'Non facturée' From 5339bb71ac2df1cfae61ab90acdce8c340179209 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 3 Aug 2019 20:53:18 +0200 Subject: [PATCH 036/228] FIX Fatal situation if payment removed on expense report. Action set_unpaid was not available. --- htdocs/expensereport/card.php | 40 +++++++++++++++++-- .../class/expensereport.class.php | 4 +- htdocs/langs/en_US/bills.lang | 1 + htdocs/langs/fr_FR/bills.lang | 1 + 4 files changed, 41 insertions(+), 5 deletions(-) diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index 21e716d7ac1..22410ee4085 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -967,6 +967,34 @@ if (empty($reshook)) } } + if ($action == 'set_unpaid' && $id > 0 && $user->rights->expensereport->to_paid) + { + $object = new ExpenseReport($db); + $object->fetch($id); + + $result = $object->set_unpaid($user); + + if ($result > 0) + { + // Define output language + if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) + { + $outputlangs = $langs; + $newlang = ''; + if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) $newlang = GETPOST('lang_id', 'aZ09'); + if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $object->thirdparty->default_lang; + if (! empty($newlang)) { + $outputlangs = new Translate("", $conf); + $outputlangs->setDefaultLang($newlang); + } + $model=$object->modelpdf; + $ret = $object->fetch($id); // Reload to get new records + + $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); + } + } + } + if ($action == 'set_paid' && $id > 0 && $user->rights->expensereport->to_paid) { $object = new ExpenseReport($db); @@ -2349,8 +2377,8 @@ if ($action != 'create' && $action != 'edit') } - // If status is Appoved - // -------------------- + // If status is Approved + // --------------------- if ($user->rights->expensereport->approve && $object->fk_statut == 5) { @@ -2394,9 +2422,15 @@ if ($action != 'create' && $action != 'edit') print ''; } + if ($user->rights->expensereport->to_paid && $object->paid && $object->fk_statut == ExpenseReport::STATUS_CLOSED) + { + // Set unpaid + print ''; + } + // Clone if ($user->rights->expensereport->creer) { - print ''; + print ''; } /* If draft, validated, cancel, and user can create, he can always delete its card before it is approved */ diff --git a/htdocs/expensereport/class/expensereport.class.php b/htdocs/expensereport/class/expensereport.class.php index 3f5029c4ef6..9bbf6617369 100644 --- a/htdocs/expensereport/class/expensereport.class.php +++ b/htdocs/expensereport/class/expensereport.class.php @@ -1366,12 +1366,12 @@ class ExpenseReport extends CommonObject { $error = 0; - if ($this->fk_c_deplacement_statuts != 5) + if ($this->paid) { $this->db->begin(); $sql = 'UPDATE '.MAIN_DB_PREFIX.$this->table_element; - $sql.= " SET fk_statut = 5"; + $sql.= " SET paid = 0"; $sql.= ' WHERE rowid = '.$this->id; dol_syslog(get_class($this)."::set_unpaid sql=".$sql, LOG_DEBUG); diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index fae0f88fcc5..02bddd4b923 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -94,6 +94,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the rest to pay.
Edit your entry, otherwise confirm and think about creating a credit note of the excess received for each overpaid invoices. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the rest to pay.
Edit your entry, otherwise confirm and think about creating a credit note of the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' diff --git a/htdocs/langs/fr_FR/bills.lang b/htdocs/langs/fr_FR/bills.lang index 4b088f8dea2..cbdcd3aefaf 100644 --- a/htdocs/langs/fr_FR/bills.lang +++ b/htdocs/langs/fr_FR/bills.lang @@ -95,6 +95,7 @@ HelpPaymentHigherThanReminderToPay=Attention, le montant de paiement pour une ou HelpPaymentHigherThanReminderToPaySupplier=Attention, le montant de paiement pour une ou plusieurs factures est supérieur au reste à payer.
Corrigez votre saisie, sinon, confirmez et pensez à créer un avoir pour l'excédent pour chaque facture surpayée. ClassifyPaid=Classer 'Payée' ClassifyPaidPartially=Classer 'Payée partiellement' +ClassifyUnPaid=Classer 'Non payée' ClassifyCanceled=Classer 'Abandonnée' ClassifyClosed=Classer 'Fermée' ClassifyUnBilled=Classer 'Non facturée' From 4ed1ff5b9bc9231ef2945494974da3ee3f8367df Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 3 Aug 2019 21:17:12 +0200 Subject: [PATCH 037/228] Fix display only stripe sources for customer --- htdocs/societe/paymentmodes.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/htdocs/societe/paymentmodes.php b/htdocs/societe/paymentmodes.php index fdd4f54b6c8..4a34a2b360f 100644 --- a/htdocs/societe/paymentmodes.php +++ b/htdocs/societe/paymentmodes.php @@ -822,7 +822,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' print '
'; // List of Stripe payment modes - if (! (empty($conf->stripe->enabled))) + if (! (empty($conf->stripe->enabled)) && $object->client) { $morehtmlright=''; if (! empty($conf->global->STRIPE_ALLOW_LOCAL_CARD)) @@ -1184,11 +1184,10 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' } print ""; print "
"; + print '
'; } - // List of bank accounts - print '
'; $morehtmlright= dolGetButtonTitle($langs->trans('Add'), '', 'fa fa-plus-circle', $_SERVER["PHP_SELF"].'?socid='.$object->id.'&action=create'); From 4633af3f5d84f175dd528d8c452138631172971d Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 3 Aug 2019 21:19:47 +0200 Subject: [PATCH 038/228] Update charge.php --- htdocs/stripe/charge.php | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/htdocs/stripe/charge.php b/htdocs/stripe/charge.php index 80c633b0254..a524a62f6a3 100644 --- a/htdocs/stripe/charge.php +++ b/htdocs/stripe/charge.php @@ -130,16 +130,15 @@ if (!$rowid) $label.="Réseau: ".$charge->outcome->network_status."
"; $label.="Statut: ".$langs->trans("".$charge->outcome->seller_message.""); $status = $form->textwithpicto(img_picto($langs->trans("".$charge->status.""), 'statut8'), $label, 1); - } + } if ($charge->payment_method_details->type=='card') { $type = $langs->trans("card"); - } - elseif ($charge->source->type=='card'){ - $type = $langs->trans("card"); + } elseif ($charge->source->type=='card'){ + $type = $langs->trans("card"); } elseif ($charge->payment_method_details->type=='three_d_secure'){ - $type = $langs->trans("card3DS"); + $type = $langs->trans("card3DS"); } if (! empty($charge->payment_intent)) { From 607a0e5da44136df4074485b626f3c248df32625 Mon Sep 17 00:00:00 2001 From: andreubisquerra Date: Sun, 4 Aug 2019 10:50:46 +0200 Subject: [PATCH 039/228] Add contextpage hidden input to preserve contexpage in search form --- htdocs/societe/list.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/societe/list.php b/htdocs/societe/list.php index 2ee5f5bedf5..2ab86d454f0 100644 --- a/htdocs/societe/list.php +++ b/htdocs/societe/list.php @@ -596,6 +596,7 @@ print ''; print ''; print ''; +print ''; print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'title_companies', 0, $newcardbutton, '', $limit); From 0ede65448232e0cc652745344fa6fb2c53c0c0c7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 4 Aug 2019 13:15:49 +0200 Subject: [PATCH 040/228] Prepare 10.0.1 --- ChangeLog | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) diff --git a/ChangeLog b/ChangeLog index babd1f4db32..c78ad8674eb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,112 @@ English Dolibarr ChangeLog -------------------------------------------------------------- + +***** ChangeLog for 10.0.1 compared to 10.0.0 ***** +FIX: #10930 +FIX: #10984 FIX: reposition on "Build backup" button +FIX: #11400 +FIX: #11412 +FIX: #11460 FIX: #11492 FIX: #11576 FIX: #11590 +FIX: #11463 +FIX: #11466 +FIX: #11498 +FIX: #11505 +FIX: #11506 +FIX: #11507 +FIX: #11509 +FIX: #11537 +FIX: #11543 +FIX: #11553 +FIX: #11584 +FIX: accounting mode must be taken from global conf, because there's no way to choose a mode with interface +FIX: Add message from public interface +FIX: add missing hook calls +FIX: Add warning when setup is strange +FIX: ajax call for line positioning when CSRFCHECK_WITH_TOKEN is on +FIX: API return 404 sometimes even if API exists +FIX: Attachment was lost when we validate an expense report +FIX: avoid conflict with "$classname" in card.php +FIX: Bad sql request +FIX: better compatibility with multicompany transverse mode +FIX: Better PHP compatibility +FIX: Block to link with tickets +FIX: Can't submit a ticket from public interface +FIX: categories import: prevent mismatch between category type and object type +FIX: Closing ticket from public interface +FIX: Column 'paid' missing in expense report +FIX: compatibility mysql 8. rank is reserved +FIX: Computed field were not calculated into lists. +FIX: Content of email for subscription +FIX: correct error in files with multiple spaces +FIX: CVE-2019-11199 +FIX: delete of links between objects +FIX: div not balanced +FIX: do not return formatted prices in json string +FIX: duplicate on the check (TODO field $onetrtd not used ?) +FIX: element name in update_price +FIX: empty product_use_units in product configuration +FIX: expedition card: infinite loop for printObjectLine hook if return > 0 +FIX: extrafield loading bug due to assumption that an object is a third party while it may be a contact if MAIN_USE_COMPANY_NAME_OF_CONTACT is set. +FIX: Fatal error on dol_htmloutput_mesg with corrupted array +FIX: Fatal situation if payment removed on expense report. Action +FIX: FEC Format - Missing date_creation in general ledger when you add a new transaction +FIX: FEC Format - Save translation of the journal label in database & nowrap on amount +FIX: floating point precision errors in the triggers of the workflow module +FIX: for #11232 +FIX: format of field with type timestamp +FIX: fournrprice log for insert +FIX: help text +FIX: import filter error +FIX: __INFOS__ tag not exists +FIX: issue #9300: install error with PostgreSQL using custom table prefix +FIX: issue #9300: install error with PostgreSQL when using custom table prefix +FIX: Language key +FIX: Limit of uploaded files (max_post_size was not used) +FIX: list of balance of leaves +FIX: minor spelling issues +FIX: missing "dropdown-icon" replacement +FIX: Missing field "Conciliated" into bank transaction export +FIX: missing filter by current contact +FIX: missing token +FIX: Missing where on entity +FIX: move sql request in INNER JOIN +FIX: name was able to be in field but went back to new line +FIX: Nowrap on amount +FIX: Online payment +FIX: on shipment delete confirm dialog, a new checkbox allows the user to choose if they want their stock re-incremented after the deletion. +FIX: option EXPORT_LABEL_FOR_SELECT to restore compatibility in export +FIX: Option THIRDPARTY_SUGGEST_ALSO_ADDRESS_CREATION +FIX: outdated phpdoc +FIX: Permission for BOM menu +FIX: permission to delete a draft purchase order +FIX: phpcs +FIX: Position was lost when we edit the line of template invoice +FIX: product_use_units was set to 0 each time a conf in block other was set +FIX: propal createFrom hook: undefined parameter attached +FIX: Responsive of public interface of ticket +FIX: search by phone pro +FIX: Setup of TakePos was not possible after a clean install +FIX: Show list of events on tickets +FIX: socpeople assigned list in action com list +FIX: SQL problem on donation & nowrap on amount +FIX: stock increase on shipment deletion if STOCK_CALCULATE_ON_SHIPMENT_NEW: is set +FIX: stripe webhook ID constant set +FIX: summary of time spent in preview tab of projects +FIX: the feature to bill time spent was not enabled. +FIX: The new feature to attach document on lines was not correclty +FIX: The proposed new supplier code does not work +FIX: this function can not be private +FIX: tk9877 - PDF rouget requires product.lib.php (otherwise measuring_units_string() is not defined) +FIX: Update the file index table when we validate/rename a ref. +FIX: use rounding to compare the amounts +FIX: We must save code instead of value in database for template invoice modelpdf +FIX: we need to be able to add freeline with qty between 0 & 1 in supplierorder line +FIX: We should remove property comments only for project and task api. +FIX: When saving an action it didn't save the label based on the type of event if the label is empty and the type is customized +FIX: when STOCK_CALCULATE_ON_SHIPMENT_NEW: is set, deleting a "closed" shipment now increases stock as expected +FIX: wrong path sociales/index.php doesnt exist anymore + ***** ChangeLog for 10.0.0 compared to 9.0.0 ***** For Users: NEW: Module "Ticket" is available as a stable module. From e81ccf1cff92f4437e17215592dca8c8fcde2c18 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sun, 4 Aug 2019 17:21:13 +0200 Subject: [PATCH 041/228] FIX addinf a "div" for better interaction with login submit button --- htdocs/core/tpl/login.tpl.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/htdocs/core/tpl/login.tpl.php b/htdocs/core/tpl/login.tpl.php index 7e3e479048b..3fb0aa25f2a 100644 --- a/htdocs/core/tpl/login.tpl.php +++ b/htdocs/core/tpl/login.tpl.php @@ -199,7 +199,10 @@ if ($captcha) {
-
+
+
+ +
'; - echo '
'; + echo '
'; if ($forgetpasslink) { $url=DOL_URL_ROOT.'/user/passwordforgotten.php'.$moreparam; if (! empty($conf->global->MAIN_PASSWORD_FORGOTLINK)) $url=$conf->global->MAIN_PASSWORD_FORGOTLINK; From baa2e870d0e9b8f112e8298115cf6fdc7b9b631e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Mon, 5 Aug 2019 11:01:58 +0200 Subject: [PATCH 042/228] Update admin.lang found in admin/company.php --- htdocs/langs/en_US/admin.lang | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index a1d042a07a1..de1e5f52fcd 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -395,6 +395,7 @@ ButtonHideUnauthorized=Hide buttons for non-admin users for unauthorized actions OldVATRates=Old VAT rate NewVATRates=New VAT rate PriceBaseTypeToChange=Modify on prices with base reference value defined on +PriceFormatInCurrentLanguage=Price Format In Current Language MassConvert=Launch mass convert String=String TextLong=Long text @@ -1857,4 +1858,4 @@ MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or use application from a text browser like lynx or links. ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. EXPORTS_SHARE_MODELS=Export models are share with everybody -ExportSetup=Setup of module Export \ No newline at end of file +ExportSetup=Setup of module Export From 41c07b9b4364dc5c6a261dcbd65cb00a68ee1d45 Mon Sep 17 00:00:00 2001 From: atm-greg Date: Mon, 5 Aug 2019 13:10:26 +0200 Subject: [PATCH 043/228] fix bad test in delivery card --- htdocs/livraison/card.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/livraison/card.php b/htdocs/livraison/card.php index 2e1c9cb47c1..028ce581358 100644 --- a/htdocs/livraison/card.php +++ b/htdocs/livraison/card.php @@ -570,7 +570,7 @@ else } // Other attributes - if ($action = 'create_delivery') { + if ($action == 'create_delivery') { // copy from expedition $expeditionExtrafields = new Extrafields($db); $expeditionExtrafieldLabels = $expeditionExtrafields->fetch_name_optionals_label($expedition->table_element); From 1d4fc32c20f0beb8d5eb21965ae413e9fc616674 Mon Sep 17 00:00:00 2001 From: atm-greg Date: Mon, 5 Aug 2019 13:13:56 +0200 Subject: [PATCH 044/228] fix second bad test --- htdocs/livraison/card.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/livraison/card.php b/htdocs/livraison/card.php index 028ce581358..13a6196d3a3 100644 --- a/htdocs/livraison/card.php +++ b/htdocs/livraison/card.php @@ -675,7 +675,7 @@ else $mode = ($object->statut == 0) ? 'edit' : 'view'; $line = new LivraisonLigne($db); $line->fetch_optionals($object->lines[$i]->id); - if ($action = 'create_delivery') { + if ($action == 'create_delivery') { $srcLine = new ExpeditionLigne($db); $expeditionLineExtrafields = new Extrafields($db); $expeditionLineExtrafieldLabels = $expeditionLineExtrafields->fetch_name_optionals_label($srcLine->table_element); From fd1204bcd2e4d97615f71615b0f53e99c9c5d423 Mon Sep 17 00:00:00 2001 From: Ferran Marcet Date: Mon, 5 Aug 2019 13:41:25 +0200 Subject: [PATCH 045/228] FIX: Make protected all pfd models functions --- .../core/modules/cheque/doc/pdf_blochet.class.php | 2 +- .../modules/commande/doc/pdf_einstein.modules.php | 8 ++++---- .../commande/doc/pdf_eratosthene.modules.php | 8 ++++---- .../modules/contract/doc/pdf_strato.modules.php | 8 ++++---- .../modules/expedition/doc/pdf_espadon.modules.php | 8 ++++---- .../modules/expedition/doc/pdf_merou.modules.php | 6 +++--- .../modules/expedition/doc/pdf_rouget.modules.php | 8 ++++---- .../expensereport/doc/pdf_standard.modules.php | 10 +++++----- .../core/modules/facture/doc/pdf_crabe.modules.php | 14 +++++++------- .../modules/facture/doc/pdf_sponge.modules.php | 12 ++++++------ .../modules/fichinter/doc/pdf_soleil.modules.php | 8 ++++---- .../modules/livraison/doc/pdf_typhon.modules.php | 8 ++++---- htdocs/core/modules/modResource.class.php | 2 +- .../modules/product/doc/pdf_standard.modules.php | 6 +++--- .../modules/project/doc/pdf_baleine.modules.php | 8 ++++---- .../modules/project/doc/pdf_beluga.modules.php | 6 +++--- .../modules/project/doc/pdf_timespent.modules.php | 8 ++++---- .../core/modules/propale/doc/pdf_azur.modules.php | 14 +++++++------- .../core/modules/propale/doc/pdf_cyan.modules.php | 12 ++++++------ .../modules/reception/doc/pdf_squille.modules.php | 8 ++++---- .../modules/stock/doc/pdf_standard.modules.php | 8 ++++---- .../modules/stock/doc/pdf_stdmovement.modules.php | 8 ++++---- .../supplier_invoice/pdf/pdf_canelle.modules.php | 10 +++++----- .../supplier_order/pdf/pdf_cornas.modules.php | 12 ++++++------ .../supplier_order/pdf/pdf_muscadet.modules.php | 12 ++++++------ .../supplier_payment/doc/pdf_standard.modules.php | 8 ++++---- .../supplier_proposal/doc/pdf_aurore.modules.php | 12 ++++++------ 27 files changed, 117 insertions(+), 117 deletions(-) diff --git a/htdocs/core/modules/cheque/doc/pdf_blochet.class.php b/htdocs/core/modules/cheque/doc/pdf_blochet.class.php index f2ef19ca19a..111c0a324ca 100644 --- a/htdocs/core/modules/cheque/doc/pdf_blochet.class.php +++ b/htdocs/core/modules/cheque/doc/pdf_blochet.class.php @@ -386,7 +386,7 @@ class BordereauChequeBlochet extends ModeleChequeReceipts * @param int $hidefreetext 1=Hide free text * @return void */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $default_font_size = pdf_getPDFFontSize($outputlangs); diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index 1c1fa12c665..64d289f1982 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -658,7 +658,7 @@ class pdf_einstein extends ModelePDFCommandes * @param Translate $outputlangs Object langs for output * @return int <0 if KO, >0 if OK */ - private function _tableau_versements(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_versements(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable } @@ -674,7 +674,7 @@ class pdf_einstein extends ModelePDFCommandes * @param Translate $outputlangs Langs object * @return void */ - private function _tableau_info(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_info(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable global $conf; @@ -862,7 +862,7 @@ class pdf_einstein extends ModelePDFCommandes * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -1125,7 +1125,7 @@ class pdf_einstein extends ModelePDFCommandes * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index 51e36b53476..012f3e9e998 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -855,7 +855,7 @@ class pdf_eratosthene extends ModelePDFCommandes * @param Translate $outputlangs Object langs for output * @return int <0 if KO, >0 if OK */ - private function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs) + protected function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs) { } @@ -868,7 +868,7 @@ class pdf_eratosthene extends ModelePDFCommandes * @param Translate $outputlangs Langs object * @return void */ - private function drawInfoTable(&$pdf, $object, $posy, $outputlangs) + protected function drawInfoTable(&$pdf, $object, $posy, $outputlangs) { global $conf; $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -1054,7 +1054,7 @@ class pdf_eratosthene extends ModelePDFCommandes * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs) { global $conf,$mysoc; @@ -1313,7 +1313,7 @@ class pdf_eratosthene extends ModelePDFCommandes * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; diff --git a/htdocs/core/modules/contract/doc/pdf_strato.modules.php b/htdocs/core/modules/contract/doc/pdf_strato.modules.php index 97fedf45808..fda022a48c6 100644 --- a/htdocs/core/modules/contract/doc/pdf_strato.modules.php +++ b/htdocs/core/modules/contract/doc/pdf_strato.modules.php @@ -519,7 +519,7 @@ class pdf_strato extends ModelePDFContract * @param int $hidebottom Hide bottom bar of array * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) { global $conf; @@ -566,7 +566,7 @@ class pdf_strato extends ModelePDFContract * @param Translate $outputlangs Object language for output * @return void */ - private function tabSignature(&$pdf, $tab_top, $tab_height, $outputlangs) + protected function tabSignature(&$pdf, $tab_top, $tab_height, $outputlangs) { $pdf->SetDrawColor(128, 128, 128); $posmiddle = $this->marge_gauche + round(($this->page_largeur - $this->marge_gauche - $this->marge_droite)/2); @@ -594,7 +594,7 @@ class pdf_strato extends ModelePDFContract * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf,$langs; @@ -773,7 +773,7 @@ class pdf_strato extends ModelePDFContract * @param int $hidefreetext 1=Hide free text * @return integer */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/expedition/doc/pdf_espadon.modules.php b/htdocs/core/modules/expedition/doc/pdf_espadon.modules.php index 87f04dca016..ebefeb9be92 100644 --- a/htdocs/core/modules/expedition/doc/pdf_espadon.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_espadon.modules.php @@ -659,7 +659,7 @@ class pdf_espadon extends ModelePdfExpedition * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -761,7 +761,7 @@ class pdf_espadon extends ModelePdfExpedition * @param int $hidebottom Hide bottom bar of array * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) { global $conf; @@ -805,7 +805,7 @@ class pdf_espadon extends ModelePdfExpedition * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf,$langs,$mysoc; @@ -1053,7 +1053,7 @@ class pdf_espadon extends ModelePdfExpedition * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php b/htdocs/core/modules/expedition/doc/pdf_merou.modules.php index 8696bc21a02..048016c3ac6 100644 --- a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_merou.modules.php @@ -460,7 +460,7 @@ class pdf_merou extends ModelePdfExpedition * @param int $hidebottom Hide bottom bar of array * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) { global $langs; $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -498,7 +498,7 @@ class pdf_merou extends ModelePdfExpedition * @param int $hidefreetext 1=Hide free text * @return void */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { $default_font_size = pdf_getPDFFontSize($outputlangs); $pdf->SetFont('', '', $default_font_size - 2); @@ -527,7 +527,7 @@ class pdf_merou extends ModelePdfExpedition * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf, $langs,$hookmanager; diff --git a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php index 1b6ca3ceda9..3466ca0be3e 100644 --- a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php @@ -675,7 +675,7 @@ class pdf_rouget extends ModelePdfExpedition * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -783,7 +783,7 @@ class pdf_rouget extends ModelePdfExpedition * @param int $hidebottom Hide bottom bar of array * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) { global $conf; @@ -868,7 +868,7 @@ class pdf_rouget extends ModelePdfExpedition * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf,$langs,$mysoc; @@ -1116,7 +1116,7 @@ class pdf_rouget extends ModelePdfExpedition * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php index e0bba62df3b..dd363d0f4fb 100644 --- a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php @@ -550,7 +550,7 @@ class pdf_standard extends ModeleExpenseReport * @param int $hidedetails Hide details (0=no, 1=yes, 2=just special lines) * @return void */ - private function printLine(&$pdf, $object, $linenumber, $curY, $default_font_size, $outputlangs, $hidedetails = 0) + protected function printLine(&$pdf, $object, $linenumber, $curY, $default_font_size, $outputlangs, $hidedetails = 0) { global $conf; $pdf->SetFont('', '', $default_font_size - 1); @@ -629,7 +629,7 @@ class pdf_standard extends ModeleExpenseReport * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { // global $conf, $langs, $hookmanager; global $user, $langs, $conf, $mysoc, $db, $hookmanager; @@ -861,7 +861,7 @@ class pdf_standard extends ModeleExpenseReport * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -971,7 +971,7 @@ class pdf_standard extends ModeleExpenseReport * @param Translate $outputlangs Object langs for output * @return int <0 if KO, >0 if OK */ - private function tablePayments(&$pdf, $object, $posy, $outputlangs) + protected function tablePayments(&$pdf, $object, $posy, $outputlangs) { global $conf; @@ -1084,7 +1084,7 @@ class pdf_standard extends ModeleExpenseReport * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails = $conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php index de1ebc00a8b..74152b7706e 100644 --- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php @@ -773,7 +773,7 @@ class pdf_crabe extends ModelePDFFactures * @param int $heightforfooter height for footer * @return int <0 if KO, >0 if OK */ - private function _tableau_versements(&$pdf, $object, $posy, $outputlangs, $heightforfooter = 0) + protected function _tableau_versements(&$pdf, $object, $posy, $outputlangs, $heightforfooter = 0) { // phpcs:enable global $conf; @@ -922,7 +922,7 @@ class pdf_crabe extends ModelePDFFactures * @param int $tab3_height height * @return void */ - private function _tableau_versements_header($pdf, $object, $outputlangs, $default_font_size, $tab3_posx, $tab3_top, $tab3_width, $tab3_height) + protected function _tableau_versements_header($pdf, $object, $outputlangs, $default_font_size, $tab3_posx, $tab3_top, $tab3_width, $tab3_height) { // phpcs:enable $title=$outputlangs->transnoentities("PaymentsAlreadyDone"); @@ -957,7 +957,7 @@ class pdf_crabe extends ModelePDFFactures * @param Translate $outputlangs Langs object * @return void */ - private function _tableau_info(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_info(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable global $conf; @@ -1117,7 +1117,7 @@ class pdf_crabe extends ModelePDFFactures * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -1418,7 +1418,7 @@ class pdf_crabe extends ModelePDFFactures * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -1535,7 +1535,7 @@ class pdf_crabe extends ModelePDFFactures * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf, $langs; @@ -1810,7 +1810,7 @@ class pdf_crabe extends ModelePDFFactures * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php index 9c7c7797841..b7ea86d305e 100644 --- a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php @@ -449,7 +449,7 @@ class pdf_sponge extends ModelePDFFactures complete_substitutions_array($substitutionarray, $outputlangs, $object); $notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs); $notetoshow = convertBackOfficeMediasLinksToPublicLinks($notetoshow); - + $pdf->startTransaction(); $pdf->SetFont('', '', $default_font_size - 1); @@ -1043,7 +1043,7 @@ class pdf_sponge extends ModelePDFFactures * @param Translate $outputlangs Langs object * @return void */ - private function drawInfoTable(&$pdf, $object, $posy, $outputlangs) + protected function drawInfoTable(&$pdf, $object, $posy, $outputlangs) { global $conf; @@ -1201,7 +1201,7 @@ class pdf_sponge extends ModelePDFFactures * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs) { global $conf,$mysoc; @@ -1522,7 +1522,7 @@ class pdf_sponge extends ModelePDFFactures * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -1570,7 +1570,7 @@ class pdf_sponge extends ModelePDFFactures * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf, $langs; @@ -1843,7 +1843,7 @@ class pdf_sponge extends ModelePDFFactures * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php index 41edc6c0a1d..8b6e7dd0d29 100644 --- a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php +++ b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php @@ -274,7 +274,7 @@ class pdf_soleil extends ModelePDFFicheinter complete_substitutions_array($substitutionarray, $outputlangs, $object); $notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs); $notetoshow = convertBackOfficeMediasLinksToPublicLinks($notetoshow); - + $tab_top = 88; $pdf->SetFont('', '', $default_font_size - 1); @@ -495,7 +495,7 @@ class pdf_soleil extends ModelePDFFicheinter * @param int $hidebottom Hide bottom bar of array * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) { global $conf; @@ -555,7 +555,7 @@ class pdf_soleil extends ModelePDFFicheinter * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf,$langs; $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -731,7 +731,7 @@ class pdf_soleil extends ModelePDFFicheinter * @param int $hidefreetext 1=Hide free text * @return integer */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php b/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php index a2124b801a6..35c87e75c55 100644 --- a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php +++ b/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php @@ -647,7 +647,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder * @param Translate $outputlangs Langs object * @return void */ - private function _tableau_info(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_info(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -678,7 +678,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder * @param int $hidebottom Hide bottom bar of array * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) { global $conf,$mysoc; @@ -740,7 +740,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf,$langs,$hookmanager; @@ -918,7 +918,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/modResource.class.php b/htdocs/core/modules/modResource.class.php index cceacf3263c..44d97d2891d 100644 --- a/htdocs/core/modules/modResource.class.php +++ b/htdocs/core/modules/modResource.class.php @@ -313,7 +313,7 @@ class modResource extends DolibarrModules * * @return int <=0 if KO, >0 if OK */ - private function loadTables() + protected function loadTables() { return $this->_load_tables('/resource/sql/'); } diff --git a/htdocs/core/modules/product/doc/pdf_standard.modules.php b/htdocs/core/modules/product/doc/pdf_standard.modules.php index 04d566248b9..b5e7e05bb24 100644 --- a/htdocs/core/modules/product/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/product/doc/pdf_standard.modules.php @@ -601,7 +601,7 @@ class pdf_standard extends ModelePDFProduct * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -704,7 +704,7 @@ class pdf_standard extends ModelePDFProduct * @param string $titlekey Translation key to show as title of document * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs, $titlekey = "") + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs, $titlekey = "") { global $conf,$langs,$hookmanager; @@ -853,7 +853,7 @@ class pdf_standard extends ModelePDFProduct * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/project/doc/pdf_baleine.modules.php b/htdocs/core/modules/project/doc/pdf_baleine.modules.php index c7005206fcc..a24ef28fdec 100644 --- a/htdocs/core/modules/project/doc/pdf_baleine.modules.php +++ b/htdocs/core/modules/project/doc/pdf_baleine.modules.php @@ -287,7 +287,7 @@ class pdf_baleine extends ModelePDFProjects complete_substitutions_array($substitutionarray, $outputlangs, $object); $notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs); $notetoshow = convertBackOfficeMediasLinksToPublicLinks($notetoshow); - + $tab_top -= 2; $pdf->SetFont('', '', $default_font_size - 1); @@ -535,7 +535,7 @@ class pdf_baleine extends ModelePDFProjects * @param int $hidebottom Hide bottom bar of array * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) { global $conf,$mysoc; @@ -582,7 +582,7 @@ class pdf_baleine extends ModelePDFProjects * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $langs,$conf,$mysoc; @@ -675,7 +675,7 @@ class pdf_baleine extends ModelePDFProjects * @param int $hidefreetext 1=Hide free text * @return integer */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/project/doc/pdf_beluga.modules.php b/htdocs/core/modules/project/doc/pdf_beluga.modules.php index 8b6cd68f343..81f7c70f460 100644 --- a/htdocs/core/modules/project/doc/pdf_beluga.modules.php +++ b/htdocs/core/modules/project/doc/pdf_beluga.modules.php @@ -708,7 +708,7 @@ class pdf_beluga extends ModelePDFProjects * @param int $hidebottom Hide bottom bar of array * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) { global $conf,$mysoc; @@ -755,7 +755,7 @@ class pdf_beluga extends ModelePDFProjects * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $langs,$conf,$mysoc; @@ -824,7 +824,7 @@ class pdf_beluga extends ModelePDFProjects * @param int $hidefreetext 1=Hide free text * @return integer */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/project/doc/pdf_timespent.modules.php b/htdocs/core/modules/project/doc/pdf_timespent.modules.php index 2c69fbd6bab..db0eed6f296 100644 --- a/htdocs/core/modules/project/doc/pdf_timespent.modules.php +++ b/htdocs/core/modules/project/doc/pdf_timespent.modules.php @@ -218,7 +218,7 @@ class pdf_timespent extends ModelePDFProjects complete_substitutions_array($substitutionarray, $outputlangs, $object); $notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs); $notetoshow = convertBackOfficeMediasLinksToPublicLinks($notetoshow); - + $tab_top -= 2; $pdf->SetFont('', '', $default_font_size - 1); @@ -466,7 +466,7 @@ class pdf_timespent extends ModelePDFProjects * @param int $hidebottom Hide bottom bar of array * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) { global $conf,$mysoc; @@ -513,7 +513,7 @@ class pdf_timespent extends ModelePDFProjects * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $langs,$conf,$mysoc; @@ -606,7 +606,7 @@ class pdf_timespent extends ModelePDFProjects * @param int $hidefreetext 1=Hide free text * @return integer */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/htdocs/core/modules/propale/doc/pdf_azur.modules.php index 54fe56421ea..1e0b10522c3 100644 --- a/htdocs/core/modules/propale/doc/pdf_azur.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_azur.modules.php @@ -843,7 +843,7 @@ class pdf_azur extends ModelePDFPropales * @param Translate $outputlangs Object langs for output * @return int <0 if KO, >0 if OK */ - private function _tableau_versements(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_versements(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable } @@ -859,7 +859,7 @@ class pdf_azur extends ModelePDFPropales * @param Translate $outputlangs Langs object * @return void */ - private function _tableau_info(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_info(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable global $conf; @@ -1041,7 +1041,7 @@ class pdf_azur extends ModelePDFPropales * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -1319,7 +1319,7 @@ class pdf_azur extends ModelePDFPropales * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -1431,7 +1431,7 @@ class pdf_azur extends ModelePDFPropales * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf,$langs; @@ -1654,7 +1654,7 @@ class pdf_azur extends ModelePDFPropales * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; @@ -1671,7 +1671,7 @@ class pdf_azur extends ModelePDFPropales * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _signature_area(&$pdf, $object, $posy, $outputlangs) + protected function _signature_area(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable global $conf; diff --git a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php index 14a2456157a..0071a2fdc1b 100644 --- a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php @@ -957,7 +957,7 @@ class pdf_cyan extends ModelePDFPropales * @param Translate $outputlangs Object langs for output * @return int <0 if KO, >0 if OK */ - private function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs) + protected function drawPaymentsTable(&$pdf, $object, $posy, $outputlangs) { } @@ -1150,7 +1150,7 @@ class pdf_cyan extends ModelePDFPropales * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function drawTotalTable(&$pdf, $object, $deja_regle, $posy, $outputlangs) { global $conf,$mysoc; $default_font_size = pdf_getPDFFontSize($outputlangs); @@ -1427,7 +1427,7 @@ class pdf_cyan extends ModelePDFPropales * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -1475,7 +1475,7 @@ class pdf_cyan extends ModelePDFPropales * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf,$langs; @@ -1700,7 +1700,7 @@ class pdf_cyan extends ModelePDFPropales * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; @@ -1716,7 +1716,7 @@ class pdf_cyan extends ModelePDFPropales * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function drawSignatureArea(&$pdf, $object, $posy, $outputlangs) + protected function drawSignatureArea(&$pdf, $object, $posy, $outputlangs) { global $conf; $default_font_size = pdf_getPDFFontSize($outputlangs); diff --git a/htdocs/core/modules/reception/doc/pdf_squille.modules.php b/htdocs/core/modules/reception/doc/pdf_squille.modules.php index dec1f35e7b0..f4a0053d9f0 100644 --- a/htdocs/core/modules/reception/doc/pdf_squille.modules.php +++ b/htdocs/core/modules/reception/doc/pdf_squille.modules.php @@ -604,7 +604,7 @@ class pdf_squille extends ModelePdfReception * @param int $totalOrdered Total ordered * @return int Position pour suite */ - private function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs, $totalOrdered) + protected function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs, $totalOrdered) { // phpcs:enable global $conf,$mysoc; @@ -707,7 +707,7 @@ class pdf_squille extends ModelePdfReception * @param int $hidebottom Hide bottom bar of array * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0) { global $conf; @@ -786,7 +786,7 @@ class pdf_squille extends ModelePdfReception * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf,$langs,$mysoc; @@ -1037,7 +1037,7 @@ class pdf_squille extends ModelePdfReception * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/stock/doc/pdf_standard.modules.php b/htdocs/core/modules/stock/doc/pdf_standard.modules.php index e1181aa6fe2..3a9eb914c4b 100644 --- a/htdocs/core/modules/stock/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/stock/doc/pdf_standard.modules.php @@ -550,7 +550,7 @@ class pdf_standard extends ModelePDFStock complete_substitutions_array($substitutionarray, $outputlangs, $object); $notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs); $notetoshow = convertBackOfficeMediasLinksToPublicLinks($notetoshow); - + $tab_top = 88; $pdf->SetFont('', '', $default_font_size - 1); @@ -767,7 +767,7 @@ class pdf_standard extends ModelePDFStock * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -870,7 +870,7 @@ class pdf_standard extends ModelePDFStock * @param string $titlekey Translation key to show as title of document * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs, $titlekey = "") + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs, $titlekey = "") { global $conf,$langs,$db,$hookmanager; @@ -1098,7 +1098,7 @@ class pdf_standard extends ModelePDFStock * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php b/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php index 2a1819a3aa0..31b5964afad 100644 --- a/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php +++ b/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php @@ -724,7 +724,7 @@ class pdf_stdmovement extends ModelePDFMovement complete_substitutions_array($substitutionarray, $outputlangs, $object); $notetoshow = make_substitutions($notetoshow, $substitutionarray, $outputlangs); $notetoshow = convertBackOfficeMediasLinksToPublicLinks($notetoshow); - + $tab_top = 88; $pdf->SetFont('', '', $default_font_size - 1); @@ -823,7 +823,7 @@ class pdf_stdmovement extends ModelePDFMovement * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -949,7 +949,7 @@ class pdf_stdmovement extends ModelePDFMovement * @param string $titlekey Translation key to show as title of document * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs, $titlekey = "") + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs, $titlekey = "") { global $conf,$langs,$db,$hookmanager; @@ -1177,7 +1177,7 @@ class pdf_stdmovement extends ModelePDFMovement * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php index 5c0904baba8..d9d84a686bf 100644 --- a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php +++ b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php @@ -616,7 +616,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -827,7 +827,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -930,7 +930,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices * @param Translate $outputlangs Object langs for output * @return int <0 if KO, >0 if OK */ - private function _tableau_versements(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_versements(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable global $conf; @@ -1022,7 +1022,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $langs, $conf, $mysoc; @@ -1235,7 +1235,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/supplier_order/pdf/pdf_cornas.modules.php b/htdocs/core/modules/supplier_order/pdf/pdf_cornas.modules.php index 612595b8c44..8aa5a4fc619 100644 --- a/htdocs/core/modules/supplier_order/pdf/pdf_cornas.modules.php +++ b/htdocs/core/modules/supplier_order/pdf/pdf_cornas.modules.php @@ -811,7 +811,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders * @param Translate $outputlangs Object langs for output * @return int <0 if KO, >0 if OK */ - private function _tableau_versements(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_versements(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable } @@ -827,7 +827,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders * @param Translate $outputlangs Langs object * @return integer */ - private function _tableau_info(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_info(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable global $conf; @@ -893,7 +893,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -1110,7 +1110,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -1176,7 +1176,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $langs,$conf,$mysoc; @@ -1421,7 +1421,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php index 0c9e8e0967a..8c228d0ccaf 100644 --- a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php +++ b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php @@ -713,7 +713,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders * @param Translate $outputlangs Object langs for output * @return int <0 if KO, >0 if OK */ - private function _tableau_versements(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_versements(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable } @@ -729,7 +729,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders * @param Translate $outputlangs Langs object * @return integer */ - private function _tableau_info(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_info(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable global $conf; @@ -795,7 +795,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -1012,7 +1012,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -1113,7 +1113,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $langs, $conf, $mysoc; @@ -1357,7 +1357,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php b/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php index 79ad993ef81..7bee236b8b7 100644 --- a/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php @@ -527,7 +527,7 @@ class pdf_standard extends ModelePDFSuppliersPayments * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _tableau_cheque(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_cheque(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -590,7 +590,7 @@ class pdf_standard extends ModelePDFSuppliersPayments * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf,$mysoc; @@ -631,7 +631,7 @@ class pdf_standard extends ModelePDFSuppliersPayments * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $langs, $conf, $mysoc; @@ -810,7 +810,7 @@ class pdf_standard extends ModelePDFSuppliersPayments * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; diff --git a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php index d8d489c1bbf..4871e44713b 100644 --- a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php +++ b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php @@ -710,7 +710,7 @@ class pdf_aurore extends ModelePDFSupplierProposal * @param Translate $outputlangs Object langs for output * @return int <0 if KO, >0 if OK */ - private function _tableau_versements(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_versements(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable } @@ -726,7 +726,7 @@ class pdf_aurore extends ModelePDFSupplierProposal * @param Translate $outputlangs Langs object * @return void */ - private function _tableau_info(&$pdf, $object, $posy, $outputlangs) + protected function _tableau_info(&$pdf, $object, $posy, $outputlangs) { // phpcs:enable global $conf; @@ -895,7 +895,7 @@ class pdf_aurore extends ModelePDFSupplierProposal * @param Translate $outputlangs Objet langs * @return int Position pour suite */ - private function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + protected function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) { // phpcs:enable global $conf,$mysoc; @@ -1170,7 +1170,7 @@ class pdf_aurore extends ModelePDFSupplierProposal * @param string $currency Currency code * @return void */ - private function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') + protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $currency = '') { global $conf; @@ -1271,7 +1271,7 @@ class pdf_aurore extends ModelePDFSupplierProposal * @param Translate $outputlangs Object lang for output * @return void */ - private function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + protected function _pagehead(&$pdf, $object, $showaddress, $outputlangs) { global $conf, $langs; @@ -1488,7 +1488,7 @@ class pdf_aurore extends ModelePDFSupplierProposal * @param int $hidefreetext 1=Hide free text * @return int Return height of bottom margin including footer text */ - private function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) + protected function _pagefoot(&$pdf, $object, $outputlangs, $hidefreetext = 0) { global $conf; $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; From cda8b15c7f1433ad338046c556a823adafd17421 Mon Sep 17 00:00:00 2001 From: Ferran Marcet Date: Mon, 5 Aug 2019 14:00:15 +0200 Subject: [PATCH 046/228] FIX: Not showing MAIN_INVERT_SENDER_RECIPIENT when edit field --- htdocs/admin/pdf.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/htdocs/admin/pdf.php b/htdocs/admin/pdf.php index 70fa3dc38b7..8f6e82887dc 100644 --- a/htdocs/admin/pdf.php +++ b/htdocs/admin/pdf.php @@ -3,6 +3,7 @@ * Copyright (C) 2004-2012 Laurent Destailleur * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2012-2107 Juanjo Menent + * Copyright (C) 2019 Ferran Marcet * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -279,6 +280,12 @@ if ($action == 'edit') // Edit print $form->selectyesno('MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS',(! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS))?$conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS:0,1); print ''; + //Invert sender and recipient + + print ''.$langs->trans("SwapSenderAndRecipientOnPDF").''; + print $form->selectyesno('MAIN_INVERT_SENDER_RECIPIENT',(! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT))?$conf->global->MAIN_INVERT_SENDER_RECIPIENT:0,1); + print ''; + // Place customer adress to the ISO location print ''.$langs->trans("PlaceCustomerAddressToIsoLocation").''; From 32220dde2e1ca544dbf4b36da6a6611e3d511088 Mon Sep 17 00:00:00 2001 From: Ferran Marcet Date: Mon, 5 Aug 2019 14:12:19 +0200 Subject: [PATCH 047/228] FIX: Wrong variable. Must be PROJECT_HIDE_UNSELECTABLES --- htdocs/core/class/html.formprojet.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/class/html.formprojet.class.php b/htdocs/core/class/html.formprojet.class.php index 35b3e52d154..d96f5e66df5 100644 --- a/htdocs/core/class/html.formprojet.class.php +++ b/htdocs/core/class/html.formprojet.class.php @@ -153,7 +153,7 @@ class FormProjets $outarray=array(); $hideunselectables = false; - if (! empty($conf->global->CONTRACT_HIDE_UNSELECTABLES)) $hideunselectables = true; + if (! empty($conf->global->PROJECT_HIDE_UNSELECTABLES)) $hideunselectables = true; $projectsListId = false; if (empty($user->rights->projet->all->lire)) From fde526f59df4343c991b40800b8406ed656e7028 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Mon, 5 Aug 2019 14:58:50 +0200 Subject: [PATCH 048/228] Update pdf_einstein.modules.php --- htdocs/core/modules/commande/doc/pdf_einstein.modules.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index def09507b92..778b6525d21 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -1221,7 +1221,7 @@ class pdf_einstein extends ModelePDFCommandes * @param int $showaddress 0=no, 1=yes * @param Translate $outputlangs Object lang for output * @param string $titlekey Translation key to show as title of document - * @return void + * @return int Return topshift value */ function _pagehead(&$pdf, $object, $showaddress, $outputlangs, $titlekey="PdfOrderTitle") { From 7f23b77cbec9639f263d2ff8ad8a3b68e6885817 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Mon, 5 Aug 2019 15:00:06 +0200 Subject: [PATCH 049/228] Update pdf_proforma.modules.php --- htdocs/core/modules/commande/doc/pdf_proforma.modules.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/modules/commande/doc/pdf_proforma.modules.php b/htdocs/core/modules/commande/doc/pdf_proforma.modules.php index ebbe72f94c9..7a2c1f724c0 100644 --- a/htdocs/core/modules/commande/doc/pdf_proforma.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_proforma.modules.php @@ -65,12 +65,12 @@ class pdf_proforma extends pdf_einstein * @param int $showaddress 0=no, 1=yes * @param Translate $outputlangs Object lang for output * @param string $titlekey Translation key to show as title of document - * @return void + * @return int Return topshift value */ function _pagehead(&$pdf, $object, $showaddress, $outputlangs, $titlekey="InvoiceProForma") { global $conf,$langs,$hookmanager; - parent::_pagehead($pdf, $object, $showaddress, $outputlangs, $titlekey); + return parent::_pagehead($pdf, $object, $showaddress, $outputlangs, $titlekey); } } From f417c85186a22661cd05264ad98f74aab98b9d81 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Mon, 5 Aug 2019 20:49:41 +0200 Subject: [PATCH 050/228] NEW list by date_cloture on order list --- htdocs/commande/list.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index f64aadf0e53..cbc5ffc04e7 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -143,6 +143,7 @@ $arrayfields=array( 'c.total_ttc'=>array('label'=>"AmountTTC", 'checked'=>0), 'c.datec'=>array('label'=>"DateCreation", 'checked'=>0, 'position'=>500), 'c.tms'=>array('label'=>"DateModificationShort", 'checked'=>0, 'position'=>500), + 'c.date_cloture'=>array('label'=>"DateClosing", 'checked'=>0, 'position'=>500), 'c.fk_statut'=>array('label'=>"Status", 'checked'=>1, 'position'=>1000), 'c.facture'=>array('label'=>"Billed", 'checked'=>1, 'position'=>1000, 'enabled'=>(empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT))) ); @@ -247,7 +248,7 @@ $sql.= " typent.code as typent_code,"; $sql.= " state.code_departement as state_code, state.nom as state_name,"; $sql.= ' c.rowid, c.ref, c.total_ht, c.tva as total_tva, c.total_ttc, c.ref_client,'; $sql.= ' c.date_valid, c.date_commande, c.note_private, c.date_livraison as date_delivery, c.fk_statut, c.facture as billed,'; -$sql.= ' c.date_creation as date_creation, c.tms as date_update,'; +$sql.= ' c.date_creation as date_creation, c.tms as date_update, c.date_cloture as date_cloture,'; $sql.= " p.rowid as project_id, p.ref as project_ref, p.title as project_label"; if ($search_categ_cus) $sql .= ", cc.fk_categorie, cc.fk_soc"; // Add fields from extrafields @@ -748,7 +749,8 @@ if ($resql) print $hookmanager->resPrint; if (! empty($arrayfields['c.datec']['checked'])) print_liste_field_titre($arrayfields['c.datec']['label'], $_SERVER["PHP_SELF"], "c.date_creation", "", $param, '', $sortfield, $sortorder, 'center nowrap '); if (! empty($arrayfields['c.tms']['checked'])) print_liste_field_titre($arrayfields['c.tms']['label'], $_SERVER["PHP_SELF"], "c.tms", "", $param, '', $sortfield, $sortorder, 'center nowrap '); - if (! empty($arrayfields['c.fk_statut']['checked'])) print_liste_field_titre($arrayfields['c.fk_statut']['label'], $_SERVER["PHP_SELF"], "c.fk_statut", "", $param, '', $sortfield, $sortorder, 'right '); + if (! empty($arrayfields['c.date_cloture']['checked'])) print_liste_field_titre($arrayfields['c.date_cloture']['label'], $_SERVER["PHP_SELF"], "c.date_cloture", "", $param, '', $sortfield, $sortorder, 'center nowrap '); + if (! empty($arrayfields['c.fk_statut']['checked'])) print_liste_field_titre($arrayfields['c.fk_statut']['label'], $_SERVER["PHP_SELF"], "c.fk_statut", "", $param, '', $sortfield, $sortorder, 'right '); if (! empty($arrayfields['c.facture']['checked'])) print_liste_field_titre($arrayfields['c.facture']['label'], $_SERVER["PHP_SELF"], 'c.facture', '', $param, '', $sortfield, $sortorder, 'center '); print_liste_field_titre($selectedfields, $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'maxwidthsearch center '); print ''."\n"; @@ -1092,6 +1094,14 @@ if ($resql) print ''; if (! $i) $totalarray['nbfield']++; } + // Date cloture + if (! empty($arrayfields['c.date_cloture']['checked'])) + { + print ''; + print dol_print_date($db->jdate($obj->date_cloture), 'dayhour', 'tzuser'); + print ''; + if (! $i) $totalarray['nbfield']++; + } // Status if (! empty($arrayfields['c.fk_statut']['checked'])) { From 0cbb14462899e1632397e60eb4b24649e26aa355 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Mon, 5 Aug 2019 20:52:27 +0200 Subject: [PATCH 051/228] Update list.php sometimes we need to get last update or closed order --- htdocs/commande/list.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index cbc5ffc04e7..a25d863176e 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -694,6 +694,12 @@ if ($resql) print ''; print ''; } + // Date cloture + if (! empty($arrayfields['c.date_cloture']['checked'])) + { + print ''; + print ''; + } // Status if (! empty($arrayfields['c.fk_statut']['checked'])) { From 4de68397ae80f5ffee564966011731382b4b9de2 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Mon, 5 Aug 2019 21:03:48 +0200 Subject: [PATCH 052/228] NEW list by date_cloture on propal list --- htdocs/comm/propal/list.php | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index 4377ebe6211..c6af61acab9 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -168,6 +168,7 @@ $arrayfields=array( 'sale_representative'=>array('label'=>"SaleRepresentativesOfThirdParty", 'checked'=>1), 'p.datec'=>array('label'=>"DateCreation", 'checked'=>0, 'position'=>500), 'p.tms'=>array('label'=>"DateModificationShort", 'checked'=>0, 'position'=>500), + 'p.date_cloture'=>array('label'=>"DateClosing", 'checked'=>0, 'position'=>500), 'p.fk_statut'=>array('label'=>"Status", 'checked'=>1, 'position'=>1000), ); // Extra fields @@ -269,7 +270,7 @@ $sql.= " typent.code as typent_code,"; $sql.= " ava.rowid as availability,"; $sql.= " state.code_departement as state_code, state.nom as state_name,"; $sql.= ' p.rowid, p.entity, p.note_private, p.total_ht, p.tva as total_vat, p.total as total_ttc, p.localtax1, p.localtax2, p.ref, p.ref_client, p.fk_statut, p.fk_user_author, p.datep as dp, p.fin_validite as dfv,p.date_livraison as ddelivery,'; -$sql.= ' p.datec as date_creation, p.tms as date_update,'; +$sql.= ' p.datec as date_creation, p.tms as date_update, p.date_cloture as date_cloture,'; $sql.= " pr.rowid as project_id, pr.ref as project_ref, pr.title as project_label,"; $sql.= ' u.login'; if (! $user->rights->societe->client->voir && ! $socid) $sql .= ", sc.fk_soc, sc.fk_user"; @@ -688,6 +689,12 @@ if ($resql) print ''; print ''; } + // Date cloture + if (! empty($arrayfields['p.date_cloture']['checked'])) + { + print ''; + print ''; + } // Status if (! empty($arrayfields['p.fk_statut']['checked'])) { @@ -735,6 +742,7 @@ if ($resql) print $hookmanager->resPrint; if (! empty($arrayfields['p.datec']['checked'])) print_liste_field_titre($arrayfields['p.datec']['label'], $_SERVER["PHP_SELF"], "p.datec", "", $param, 'align="center" class="nowrap"', $sortfield, $sortorder); if (! empty($arrayfields['p.tms']['checked'])) print_liste_field_titre($arrayfields['p.tms']['label'], $_SERVER["PHP_SELF"], "p.tms", "", $param, 'align="center" class="nowrap"', $sortfield, $sortorder); + if (! empty($arrayfields['p.date_cloture']['checked'])) print_liste_field_titre($arrayfields['p.date_cloture']['label'], $_SERVER["PHP_SELF"], "p.date_cloture", "", $param, 'align="center" class="nowrap"', $sortfield, $sortorder); if (! empty($arrayfields['p.fk_statut']['checked'])) print_liste_field_titre($arrayfields['p.fk_statut']['label'], $_SERVER["PHP_SELF"], "p.fk_statut", "", $param, 'class="right"', $sortfield, $sortorder); print_liste_field_titre($selectedfields, $_SERVER["PHP_SELF"], "", '', '', 'align="center"', $sortfield, $sortorder, 'maxwidthsearch '); print ''."\n"; @@ -1073,6 +1081,14 @@ if ($resql) print ''; if (! $i) $totalarray['nbfield']++; } + // Date cloture + if (! empty($arrayfields['p.date_cloture']['checked'])) + { + print ''; + print dol_print_date($db->jdate($obj->date_cloture), 'dayhour', 'tzuser'); + print ''; + if (! $i) $totalarray['nbfield']++; + } // Status if (! empty($arrayfields['p.fk_statut']['checked'])) { From bb5dd734a9ea9c9d553762e44a22b8f204e4fc5e Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Mon, 5 Aug 2019 23:34:28 +0200 Subject: [PATCH 053/228] Balance Stripe connect account for supplier --- htdocs/societe/paymentmodes.php | 92 +++++++++++++++++++++++++++++++-- 1 file changed, 87 insertions(+), 5 deletions(-) diff --git a/htdocs/societe/paymentmodes.php b/htdocs/societe/paymentmodes.php index 4f525330e79..d0a67aa6448 100644 --- a/htdocs/societe/paymentmodes.php +++ b/htdocs/societe/paymentmodes.php @@ -788,10 +788,8 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' $permissiontowrite = $user->rights->societe->creer; // Stripe customer key 'cu_....' stored into llx_societe_account print ''; - //print $langs->trans('StripeCustomerId'); print $form->editfieldkey("StripeCustomerId", 'key_account', $stripecu, $object, $permissiontowrite, 'string', '', 0, 2, 'socid'); print ''; - //print $stripecu; print $form->editfieldval("StripeCustomerId", 'key_account', $stripecu, $object, $permissiontowrite, 'string', '', null, null, '', 2, '', 'socid'); if (! empty($conf->stripe->enabled) && $stripecu && $action != 'editkey_account') { @@ -817,6 +815,60 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' print ''; } } + + if ($object->fournisseur && $conf->global->MAIN_FEATURES_LEVEL >= 2) + { + print ''; + print $langs->trans('SupplierCode').''; + print $object->code_fournisseur; + if ($object->check_codefournisseur() <> 0) print ' ('.$langs->trans("WrongSupplierCode").')'; + print ''; + $sql = "SELECT count(*) as nb from ".MAIN_DB_PREFIX."facture where fk_soc = ".$socid; + $resql=$db->query($sql); + if (!$resql) dol_print_error($db); + $obj = $db->fetch_object($resql); + $nbFactsClient = $obj->nb; + $thirdTypeArray['customer']=$langs->trans("customer"); + if ($conf->propal->enabled && $user->rights->propal->lire) $elementTypeArray['propal']=$langs->transnoentitiesnoconv('Proposals'); + if ($conf->commande->enabled && $user->rights->commande->lire) $elementTypeArray['order']=$langs->transnoentitiesnoconv('Orders'); + if ($conf->facture->enabled && $user->rights->facture->lire) $elementTypeArray['invoice']=$langs->transnoentitiesnoconv('Invoices'); + if ($conf->contrat->enabled && $user->rights->contrat->lire) $elementTypeArray['contract']=$langs->transnoentitiesnoconv('Contracts'); + + if (! empty($conf->stripe->enabled) && ! empty($conf->stripeconnect->enabled)) + { + $permissiontowrite = $user->rights->societe->creer; + $stripesupplieracc = $stripe->getStripeAccount($service, $object->id); // Get Stripe OAuth connect account (no network access here) + + // Stripe customer key 'cu_....' stored into llx_societe_account + print ''; + print $form->editfieldkey("StripeSupplierId", 'key_account_supplier', $stripesupplieracc, $object, $permissiontowrite, 'string', '', 0, 2, 'socid'); + print ''; + print $form->editfieldval("StripeSupplierId", 'key_account_supplier', $stripesupplieracc, $object, $permissiontowrite, 'string', '', null, null, '', 2, '', 'socid'); + if (! empty($conf->stripe->enabled) && $stripesupplieracc && $action != 'editkey_account') + { + $connect=''; + + $url='https://dashboard.stripe.com/test/'.$stripesupplieracc; + if ($servicestatus) + { + $url='https://dashboard.stripe.com/'.$stripesupplieracc; + } + print ' '.img_picto($langs->trans('ShowInStripe'), 'object_globe').''; + } + print ''; + if (empty($stripesupplieracc)) + { + print '
'; + print ''; + print ''; + print ''; + print ''; + //print ''; + print '
'; + } + print ''; + } + } print ''; print '
'; @@ -826,7 +878,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' print '
'; // List of Stripe payment modes - if (! (empty($conf->stripe->enabled))) + if (! (empty($conf->stripe->enabled)) && $object->client) { $morehtmlright=''; if (! empty($conf->global->STRIPE_ALLOW_LOCAL_CARD)) @@ -1188,11 +1240,41 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' } print ""; print "
"; + print '
'; } - + + // List of Stripe payment modes + if (! empty($conf->stripe->enabled) && ! empty($conf->stripeconnect->enabled) && $object->fournisseur && ! empty($stripesupplieracc)) + { + print load_fiche_titre($langs->trans('StripeBalance').($stripesupplieracc?' (Stripe connection with StripeConnect account '.$stripesupplieracc.')':' (Stripe connection with keys from Stripe module setup)'), $morehtmlright, ''); + $balance = \Stripe\Balance::retrieve(array("stripe_account" => $stripesupplieracc)); + print ''."\n"; + print ''; + print ''; + print ''; + print ''; + print ''; + + if (is_array($balance->available) && count($balance->available)) + { + foreach ($balance->available as $cpt) + { + print ''; + } + } + + if (is_array($balance->pending) && count($balance->pending)) + { + foreach ($balance->pending as $cpt) + { + print ''; + } + } + print '
'.$langs->trans('Status').''.$langs->trans('Amount').''.$langs->trans('Currency').'
'.$langs->trans("Available").''.price($cpt->amount, 0, '', 1, - 1, - 1, strtoupper($cpt->currency)).' '.$langs->trans("Currency".strtoupper($cpt->currency)).'
'.$langs->trans("Pending").''.price($cpt->amount, 0, '', 1, - 1, - 1, strtoupper($cpt->currency)).' '.$langs->trans("Currency".strtoupper($cpt->currency)).'
'; + print '
'; + } // List of bank accounts - print '
'; $morehtmlright= dolGetButtonTitle($langs->trans('Add'), '', 'fa fa-plus-circle', $_SERVER["PHP_SELF"].'?socid='.$object->id.'&action=create'); From de5872db6d812e63d6a0c1372c18d87be4df6555 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Tue, 6 Aug 2019 00:12:49 +0200 Subject: [PATCH 054/228] Update paymentmodes.php --- htdocs/societe/paymentmodes.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/htdocs/societe/paymentmodes.php b/htdocs/societe/paymentmodes.php index d0a67aa6448..23d259fd2e1 100644 --- a/htdocs/societe/paymentmodes.php +++ b/htdocs/societe/paymentmodes.php @@ -868,7 +868,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' } print ''; } - } + } print ''; print '
'; @@ -1252,7 +1252,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' print ''; print ''.$langs->trans('Status').''; print ''.$langs->trans('Amount').''; - print ''.$langs->trans('Currency').''; + print ''.$langs->trans('Currency').''; print ''; if (is_array($balance->available) && count($balance->available)) @@ -1260,19 +1260,19 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' foreach ($balance->available as $cpt) { print ''.$langs->trans("Available").''.price($cpt->amount, 0, '', 1, - 1, - 1, strtoupper($cpt->currency)).' '.$langs->trans("Currency".strtoupper($cpt->currency)).''; - } - } + } + } if (is_array($balance->pending) && count($balance->pending)) { foreach ($balance->pending as $cpt) { print ''.$langs->trans("Pending").''.price($cpt->amount, 0, '', 1, - 1, - 1, strtoupper($cpt->currency)).' '.$langs->trans("Currency".strtoupper($cpt->currency)).''; - } + } } print ''; print '
'; - } + } // List of bank accounts From 05ac4eec52c8fe5c585dbc8171ee891e45742e9e Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Tue, 6 Aug 2019 00:16:18 +0200 Subject: [PATCH 055/228] Update charge.php --- htdocs/stripe/charge.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/stripe/charge.php b/htdocs/stripe/charge.php index a524a62f6a3..9d4bf71c040 100644 --- a/htdocs/stripe/charge.php +++ b/htdocs/stripe/charge.php @@ -133,13 +133,13 @@ if (!$rowid) } if ($charge->payment_method_details->type=='card') - { + { $type = $langs->trans("card"); - } elseif ($charge->source->type=='card'){ + } elseif ($charge->source->type=='card'){ $type = $langs->trans("card"); - } elseif ($charge->payment_method_details->type=='three_d_secure'){ + } elseif ($charge->payment_method_details->type=='three_d_secure'){ $type = $langs->trans("card3DS"); - } + } if (! empty($charge->payment_intent)) { $charge = \Stripe\PaymentIntent::retrieve($charge->payment_intent); From 69985339d86b1668704ce64c16f51699ca25717f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Tue, 6 Aug 2019 11:47:34 +0200 Subject: [PATCH 056/228] Update price_parser.class.php --- .../product/dynamic_price/class/price_parser.class.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/htdocs/product/dynamic_price/class/price_parser.class.php b/htdocs/product/dynamic_price/class/price_parser.class.php index 3249671d173..1dd98c6610e 100644 --- a/htdocs/product/dynamic_price/class/price_parser.class.php +++ b/htdocs/product/dynamic_price/class/price_parser.class.php @@ -259,9 +259,14 @@ class PriceParser return -1; } - //Get the supplier min + //Get the supplier min price $productFournisseur = new ProductFournisseur($this->db); - $supplier_min_price = $productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0); + $res = $productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0); + if ($res<1) { + $this->error_parser = array(25, null); + return -1; + } + $supplier_min_price = $productFournisseur->fourn_unitprice; //Accessible values by expressions $extra_values = array_merge($extra_values, array( From 0fafeab7641664fbd7f03532c74bd26d17bcdc62 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Tue, 6 Aug 2019 13:08:34 +0200 Subject: [PATCH 057/228] Update paymentmodes.php --- htdocs/societe/paymentmodes.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/societe/paymentmodes.php b/htdocs/societe/paymentmodes.php index 23d259fd2e1..2b0dd39dc83 100644 --- a/htdocs/societe/paymentmodes.php +++ b/htdocs/societe/paymentmodes.php @@ -816,7 +816,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' } } - if ($object->fournisseur && $conf->global->MAIN_FEATURES_LEVEL >= 2) + if ($object->fournisseur) { print ''; print $langs->trans('SupplierCode').''; @@ -833,8 +833,9 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' if ($conf->commande->enabled && $user->rights->commande->lire) $elementTypeArray['order']=$langs->transnoentitiesnoconv('Orders'); if ($conf->facture->enabled && $user->rights->facture->lire) $elementTypeArray['invoice']=$langs->transnoentitiesnoconv('Invoices'); if ($conf->contrat->enabled && $user->rights->contrat->lire) $elementTypeArray['contract']=$langs->transnoentitiesnoconv('Contracts'); - - if (! empty($conf->stripe->enabled) && ! empty($conf->stripeconnect->enabled)) + } + + if (! empty($conf->stripe->enabled) && ! empty($conf->stripeconnect->enabled) && $conf->global->MAIN_FEATURES_LEVEL >= 2) { $permissiontowrite = $user->rights->societe->creer; $stripesupplieracc = $stripe->getStripeAccount($service, $object->id); // Get Stripe OAuth connect account (no network access here) @@ -868,7 +869,6 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' } print ''; } - } print ''; print ''; From 2585f7232aa0b517ada76eaa0be150959f6fe92e Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Tue, 6 Aug 2019 13:09:56 +0200 Subject: [PATCH 058/228] Update paymentmodes.php --- htdocs/societe/paymentmodes.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/societe/paymentmodes.php b/htdocs/societe/paymentmodes.php index 2b0dd39dc83..e6ec4643e37 100644 --- a/htdocs/societe/paymentmodes.php +++ b/htdocs/societe/paymentmodes.php @@ -844,7 +844,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' print ''; print $form->editfieldkey("StripeSupplierId", 'key_account_supplier', $stripesupplieracc, $object, $permissiontowrite, 'string', '', 0, 2, 'socid'); print ''; - print $form->editfieldval("StripeSupplierId", 'key_account_supplier', $stripesupplieracc, $object, $permissiontowrite, 'string', '', null, null, '', 2, '', 'socid'); + print $form->editfieldval("StripeConnectAccount", 'key_account_supplier', $stripesupplieracc, $object, $permissiontowrite, 'string', '', null, null, '', 2, '', 'socid'); if (! empty($conf->stripe->enabled) && $stripesupplieracc && $action != 'editkey_account') { $connect=''; From 944943dcc0752b9664e004425b6cd41eb0f0fe72 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Tue, 6 Aug 2019 13:10:40 +0200 Subject: [PATCH 059/228] Update paymentmodes.php --- htdocs/societe/paymentmodes.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/societe/paymentmodes.php b/htdocs/societe/paymentmodes.php index e6ec4643e37..1b5fb26a5d2 100644 --- a/htdocs/societe/paymentmodes.php +++ b/htdocs/societe/paymentmodes.php @@ -842,7 +842,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' // Stripe customer key 'cu_....' stored into llx_societe_account print ''; - print $form->editfieldkey("StripeSupplierId", 'key_account_supplier', $stripesupplieracc, $object, $permissiontowrite, 'string', '', 0, 2, 'socid'); + print $form->editfieldkey("StripeConnectAccount", 'key_account_supplier', $stripesupplieracc, $object, $permissiontowrite, 'string', '', 0, 2, 'socid'); print ''; print $form->editfieldval("StripeConnectAccount", 'key_account_supplier', $stripesupplieracc, $object, $permissiontowrite, 'string', '', null, null, '', 2, '', 'socid'); if (! empty($conf->stripe->enabled) && $stripesupplieracc && $action != 'editkey_account') From d0f6d1f17515664c0572d1daeed0d7e893afec8e Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Tue, 6 Aug 2019 13:12:10 +0200 Subject: [PATCH 060/228] Update paymentmodes.php --- htdocs/societe/paymentmodes.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/societe/paymentmodes.php b/htdocs/societe/paymentmodes.php index 1b5fb26a5d2..1bbd60a577f 100644 --- a/htdocs/societe/paymentmodes.php +++ b/htdocs/societe/paymentmodes.php @@ -849,10 +849,10 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' { $connect=''; - $url='https://dashboard.stripe.com/test/'.$stripesupplieracc; + $url='https://dashboard.stripe.com/test/connect/accounts/'.$stripesupplieracc; if ($servicestatus) { - $url='https://dashboard.stripe.com/'.$stripesupplieracc; + $url='https://dashboard.stripe.com/connect/accounts/'.$stripesupplieracc; } print ' '.img_picto($langs->trans('ShowInStripe'), 'object_globe').''; } From 97223bf2eb141c32e543286740bf2ba347da398b Mon Sep 17 00:00:00 2001 From: Tim Otte Date: Tue, 6 Aug 2019 15:10:13 +0200 Subject: [PATCH 061/228] Fixed expedition line rangs Rang is now transferred to the database --- htdocs/expedition/class/expedition.class.php | 30 +++++++++++++++++--- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php index 97c67fd7701..29ff4ecb33e 100644 --- a/htdocs/expedition/class/expedition.class.php +++ b/htdocs/expedition/class/expedition.class.php @@ -353,7 +353,7 @@ class Expedition extends CommonObject { if (! isset($this->lines[$i]->detail_batch)) { // no batch management - if (! $this->create_line($this->lines[$i]->entrepot_id, $this->lines[$i]->origin_line_id, $this->lines[$i]->qty, $this->lines[$i]->array_options) > 0) + if (! $this->create_line($this->lines[$i]->entrepot_id, $this->lines[$i]->origin_line_id, $this->lines[$i]->qty, $this->lines[$i]->rang, $this->lines[$i]->array_options) > 0) { $error++; } @@ -444,7 +444,7 @@ class Expedition extends CommonObject * @param array $array_options extrafields array * @return int <0 if KO, line_id if OK */ - public function create_line($entrepot_id, $origin_line_id, $qty, $array_options = 0) + public function create_line($entrepot_id, $origin_line_id, $qty, $rang, $array_options = 0) { //phpcs:enable global $user; @@ -454,6 +454,7 @@ class Expedition extends CommonObject $expeditionline->entrepot_id = $entrepot_id; $expeditionline->fk_origin_line = $origin_line_id; $expeditionline->qty = $qty; + $expeditionline->rang = $rang; $expeditionline->array_options = $array_options; if (($lineId = $expeditionline->insert($user)) < 0) @@ -490,7 +491,7 @@ class Expedition extends CommonObject // create shipment lines foreach ($stockLocationQty as $stockLocation => $qty) { - if (($line_id = $this->create_line($stockLocation, $line_ext->origin_line_id, $qty, $array_options)) < 0) + if (($line_id = $this->create_line($stockLocation, $line_ext->origin_line_id, $qty, $line_ext->rang, $array_options)) < 0) { $error++; } @@ -926,6 +927,9 @@ class Expedition extends CommonObject $orderline = new OrderLine($this->db); $orderline->fetch($id); + // Copy the rang of the order line to the expedition line + $line->rang = $orderline->rang; + if (! empty($conf->stock->enabled) && ! empty($orderline->fk_product)) { $fk_product = $orderline->fk_product; @@ -1383,7 +1387,7 @@ class Expedition extends CommonObject $sql = "SELECT cd.rowid, cd.fk_product, cd.label as custom_label, cd.description, cd.qty as qty_asked, cd.product_type"; $sql.= ", cd.total_ht, cd.total_localtax1, cd.total_localtax2, cd.total_ttc, cd.total_tva"; $sql.= ", cd.vat_src_code, cd.tva_tx, cd.localtax1_tx, cd.localtax2_tx, cd.localtax1_type, cd.localtax2_type, cd.info_bits, cd.price, cd.subprice, cd.remise_percent,cd.buy_price_ht as pa_ht"; - $sql.= ", cd.fk_multicurrency, cd.multicurrency_code, cd.multicurrency_subprice, cd.multicurrency_total_ht, cd.multicurrency_total_tva, cd.multicurrency_total_ttc"; + $sql.= ", cd.fk_multicurrency, cd.multicurrency_code, cd.multicurrency_subprice, cd.multicurrency_total_ht, cd.multicurrency_total_tva, cd.multicurrency_total_ttc, cd.rang"; $sql.= ", ed.rowid as line_id, ed.qty as qty_shipped, ed.fk_origin_line, ed.fk_entrepot"; $sql.= ", p.ref as product_ref, p.label as product_label, p.fk_product_type"; $sql.= ", p.weight, p.weight_units, p.length, p.length_units, p.surface, p.surface_units, p.volume, p.volume_units, p.tobatch as product_tobatch"; @@ -1452,6 +1456,7 @@ class Expedition extends CommonObject $line->label = $obj->custom_label; $line->description = $obj->description; $line->qty_asked = $obj->qty_asked; + $line->rang = $obj->rang; $line->weight = $obj->weight; $line->weight_units = $obj->weight_units; $line->length = $obj->length; @@ -2459,6 +2464,11 @@ class ExpeditionLigne extends CommonObjectLine */ public $product_desc; + /** + * @var int rang of line + */ + public $rang; + /** * @var float weight */ @@ -2579,16 +2589,28 @@ class ExpeditionLigne extends CommonObjectLine $this->db->begin(); + if (empty($this->rang)) $this->rang = 0; + + // Rank to use + $rangtouse = $this->rang; + if ($rangtouse == -1) + { + $rangmax = $this->line_max($fk_expedition); + $rangtouse = $rangmax + 1; + } + $sql = "INSERT INTO ".MAIN_DB_PREFIX."expeditiondet ("; $sql.= "fk_expedition"; $sql.= ", fk_entrepot"; $sql.= ", fk_origin_line"; $sql.= ", qty"; + $sql.= ", rang"; $sql.= ") VALUES ("; $sql.= $this->fk_expedition; $sql.= ", ".(empty($this->entrepot_id) ? 'NULL' : $this->entrepot_id); $sql.= ", ".$this->fk_origin_line; $sql.= ", ".$this->qty; + $sql.= ", ".$rangtouse; $sql.= ")"; dol_syslog(get_class($this)."::insert", LOG_DEBUG); From cafd4fc5997244d427ade2277c56b0781518d736 Mon Sep 17 00:00:00 2001 From: John Botella Date: Tue, 6 Aug 2019 15:24:42 +0200 Subject: [PATCH 062/228] New living color for chart --- htdocs/core/class/dolgraph.class.php | 2 +- htdocs/theme/eldy/theme_vars.inc.php | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/htdocs/core/class/dolgraph.class.php b/htdocs/core/class/dolgraph.class.php index 458f0bd4fad..5c45eb5836d 100644 --- a/htdocs/core/class/dolgraph.class.php +++ b/htdocs/core/class/dolgraph.class.php @@ -1094,7 +1094,7 @@ class DolGraph $i++; } // shadowSize: 0 -> Drawing is faster without shadows - $this->stringtoshow.="\n".' ], { series: { shadowSize: 0, stack: stack, lines: { fill: false, steps: steps }, bars: { barWidth: 0.6 } }'."\n"; + $this->stringtoshow.="\n".' ], { series: { shadowSize: 0, stack: stack, lines: { fill: false, steps: steps }, bars: { barWidth: 0.6, fillColor: { colors: [{opacity: 0.9 }, {opacity: 0.85}] }} }'."\n"; // Xaxis $this->stringtoshow.=', xaxis: { ticks: ['."\n"; diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index f02c25113ef..b050425163e 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -32,7 +32,8 @@ global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); -$theme_datacolor = array(array(136,102,136), array(0,130,110), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +$theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); + $theme_bgcolor = array(hexdec('F4'),hexdec('F4'),hexdec('F4')); $theme_bgcoloronglet = array(hexdec('DE'),hexdec('E7'),hexdec('EC')); From 22202c2d27438dd83f96728562d5736ac33ba389 Mon Sep 17 00:00:00 2001 From: Tim Otte Date: Tue, 6 Aug 2019 15:33:26 +0200 Subject: [PATCH 063/228] Added missing parameter comment --- htdocs/expedition/class/expedition.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php index 29ff4ecb33e..f484c2690a6 100644 --- a/htdocs/expedition/class/expedition.class.php +++ b/htdocs/expedition/class/expedition.class.php @@ -441,6 +441,7 @@ class Expedition extends CommonObject * @param int $entrepot_id Id of warehouse * @param int $origin_line_id Id of source line * @param int $qty Quantity + * @param int $rang Rang * @param array $array_options extrafields array * @return int <0 if KO, line_id if OK */ From 7866c2c0d3af5121122f35a142a563e5ed85c4bb Mon Sep 17 00:00:00 2001 From: John Botella Date: Tue, 6 Aug 2019 15:42:12 +0200 Subject: [PATCH 064/228] change color --- htdocs/theme/eldy/theme_vars.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index b050425163e..4f5708ba556 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -32,7 +32,7 @@ global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); -$theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +$theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250,190,30), array(221, 75, 57), array(0,166,90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); $theme_bgcolor = array(hexdec('F4'),hexdec('F4'),hexdec('F4')); $theme_bgcoloronglet = array(hexdec('DE'),hexdec('E7'),hexdec('EC')); From ee8d99351df76ef2e12a11a379b12c9ba69a64d3 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Tue, 6 Aug 2019 16:28:18 +0200 Subject: [PATCH 065/228] Update facture.php --- htdocs/product/stats/facture.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/htdocs/product/stats/facture.php b/htdocs/product/stats/facture.php index d60c4d835a5..a11bfe14865 100644 --- a/htdocs/product/stats/facture.php +++ b/htdocs/product/stats/facture.php @@ -234,7 +234,9 @@ if ($id > 0 || ! empty($ref)) while ($i < min($num, $limit)) { $objp = $db->fetch_object($result); - + + if ($objp->type == Facture::TYPE_CREDIT_NOTE) $objp->qty=-($objp->qty); + $total_ht+=$objp->total_ht; $total_qty+=$objp->qty; From 0fc92b92a25da11770e8649805ae4b9226acbada Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Tue, 6 Aug 2019 16:47:54 +0200 Subject: [PATCH 066/228] Update facture.php --- htdocs/product/stats/facture.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/stats/facture.php b/htdocs/product/stats/facture.php index a11bfe14865..8eab980f1dc 100644 --- a/htdocs/product/stats/facture.php +++ b/htdocs/product/stats/facture.php @@ -235,7 +235,7 @@ if ($id > 0 || ! empty($ref)) { $objp = $db->fetch_object($result); - if ($objp->type == Facture::TYPE_CREDIT_NOTE) $objp->qty=-($objp->qty); + if ($objp->type == Facture::TYPE_CREDIT_NOTE) $objp->qty=-($objp->qty); $total_ht+=$objp->total_ht; $total_qty+=$objp->qty; From 3e94b3dc59a991ffc209fdcd718e3f1cd9ce8cf9 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Tue, 6 Aug 2019 16:54:44 +0200 Subject: [PATCH 067/228] FIX count negative in stats whithcredit note --- htdocs/product/class/product.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 11cbfa9ff14..4b685af983d 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -2792,7 +2792,7 @@ class Product extends CommonObject global $user; $sql = "SELECT COUNT(DISTINCT f.fk_soc) as nb_customers, COUNT(DISTINCT f.rowid) as nb,"; - $sql.= " COUNT(fd.rowid) as nb_rows, SUM(fd.qty) as qty"; + $sql.= " COUNT(fd.rowid) as nb_rows, SUM(CASE WHEN type != 2 THEN fd.qty ELSE -(fd.qty) END) as qty"; $sql.= " FROM ".MAIN_DB_PREFIX."facturedet as fd"; $sql.= ", ".MAIN_DB_PREFIX."facture as f"; $sql.= ", ".MAIN_DB_PREFIX."societe as s"; From faf65f39b67fd6e9cd03db12c41119bf9e71a493 Mon Sep 17 00:00:00 2001 From: JC Prieto Date: Tue, 6 Aug 2019 19:14:56 +0200 Subject: [PATCH 068/228] FIX: Update() function checking If module Project is off, shows an error. --- htdocs/compta/sociales/class/chargesociales.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/compta/sociales/class/chargesociales.class.php b/htdocs/compta/sociales/class/chargesociales.class.php index 41c9555ccfc..43228b202b8 100644 --- a/htdocs/compta/sociales/class/chargesociales.class.php +++ b/htdocs/compta/sociales/class/chargesociales.class.php @@ -317,7 +317,7 @@ class ChargeSociales extends CommonObject $sql.= ", date_ech='".$this->db->idate($this->date_ech)."'"; $sql.= ", periode='".$this->db->idate($this->periode)."'"; $sql.= ", amount='".price2num($this->amount, 'MT')."'"; - $sql.= ", fk_projet='".$this->db->escape($this->fk_project)."'"; + if($this->fk_project > 0) $sql.= ", fk_projet='".$this->db->escape($this->fk_project)."'"; $sql.= ", fk_user_modif=".$user->id; $sql.= " WHERE rowid=".$this->id; From 4aeaa580eae40b65059acef11807dbc8d9570048 Mon Sep 17 00:00:00 2001 From: John Botella Date: Wed, 7 Aug 2019 11:11:47 +0200 Subject: [PATCH 069/228] Add color blind option --- htdocs/core/lib/usergroups.lib.php | 39 ++++++++++++++++++++++++++++++ htdocs/langs/en_US/admin.lang | 5 ++++ htdocs/user/param_ihm.php | 6 +++++ 3 files changed, 50 insertions(+) diff --git a/htdocs/core/lib/usergroups.lib.php b/htdocs/core/lib/usergroups.lib.php index 7da112fa255..630ad5c796e 100644 --- a/htdocs/core/lib/usergroups.lib.php +++ b/htdocs/core/lib/usergroups.lib.php @@ -947,5 +947,44 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) */ } + + // Use MAIN_OPTIMIZEFORTEXTBROWSER + if ($foruserprofile) + { + //$default=yn($conf->global->MAIN_OPTIMIZEFORCOLORBLIND); + $default=$langs->trans('No'); + print ''; + print ''.$langs->trans("MAIN_OPTIMIZEFORCOLORBLIND").''; + print ''; + + $colorBlindOptions = array( + 'none' => $langs->trans('No'), + 'protanopia' => $langs->trans('Protanopia'), + 'deuteranopes' => $langs->trans('Deuteranopes'), + 'tritanopes' => $langs->trans('Tritanopes'), + ); + + if ($edit) + { + print $form->selectArray('MAIN_OPTIMIZEFORCOLORBLIND', $colorBlindOptions, $fuser->conf->MAIN_OPTIMIZEFORCOLORBLIND, 0); + } + else + { + if (!empty($fuser->conf->MAIN_OPTIMIZEFORCOLORBLIND) && isset($colorBlindOptions[$fuser->conf->MAIN_OPTIMIZEFORCOLORBLIND])){ + print $colorBlindOptions[$fuser->conf->MAIN_OPTIMIZEFORCOLORBLIND]; + } + else{ + print yn(0); + } + } + print '   ('.$langs->trans("Default").': '.$default.') '; + print $form->textwithpicto('', $langs->trans("MAIN_OPTIMIZEFORCOLORBLINDDesc")); + print ''; + print ''; + } + else + { + + } print ''; } diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 0f22d42327c..48d4d898de6 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1900,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. diff --git a/htdocs/user/param_ihm.php b/htdocs/user/param_ihm.php index 90228aa952e..c33c26fa95b 100644 --- a/htdocs/user/param_ihm.php +++ b/htdocs/user/param_ihm.php @@ -152,6 +152,12 @@ if (empty($reshook)) { $tabparam["MAIN_OPTIMIZEFORTEXTBROWSER"] = 0; } + if (GETPOST('MAIN_OPTIMIZEFORCOLORBLIND')) { + $tabparam["MAIN_OPTIMIZEFORCOLORBLIND"] = GETPOST('MAIN_OPTIMIZEFORCOLORBLIND'); + } else { + $tabparam["MAIN_OPTIMIZEFORCOLORBLIND"] = 0; + } + $result = dol_set_user_param($db, $conf, $object, $tabparam); header('Location: ' . $_SERVER["PHP_SELF"] . '?id=' . $id); From 63191dab7d5b4572f243bff03a0edf5308549498 Mon Sep 17 00:00:00 2001 From: John Botella Date: Wed, 7 Aug 2019 12:03:19 +0200 Subject: [PATCH 070/228] Add user color blind option --- htdocs/core/class/dolgraph.class.php | 2 +- htdocs/core/lib/usergroups.lib.php | 2 +- htdocs/theme/eldy/theme_vars.inc.php | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/htdocs/core/class/dolgraph.class.php b/htdocs/core/class/dolgraph.class.php index 5c45eb5836d..6bc20742821 100644 --- a/htdocs/core/class/dolgraph.class.php +++ b/htdocs/core/class/dolgraph.class.php @@ -96,7 +96,7 @@ class DolGraph */ public function __construct($library = 'jflot') { - global $conf; + global $conf, $user; global $theme_bordercolor, $theme_datacolor, $theme_bgcolor; // To use old feature diff --git a/htdocs/core/lib/usergroups.lib.php b/htdocs/core/lib/usergroups.lib.php index 630ad5c796e..ea7f9856509 100644 --- a/htdocs/core/lib/usergroups.lib.php +++ b/htdocs/core/lib/usergroups.lib.php @@ -958,7 +958,7 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) print ''; $colorBlindOptions = array( - 'none' => $langs->trans('No'), + 0 => $langs->trans('No'), 'protanopia' => $langs->trans('Protanopia'), 'deuteranopes' => $langs->trans('Deuteranopes'), 'tritanopes' => $langs->trans('Tritanopes'), diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index 4f5708ba556..1fc1acb32bc 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -30,9 +30,14 @@ * if (is_readable($var_file)) include $var_file; */ -global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; +global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet, $user; $theme_bordercolor = array(235,235,224); $theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250,190,30), array(221, 75, 57), array(0,166,90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +if(!empty($user) && !empty($user->conf->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by graph +{ + // for now we use the same configuration for all types of color blind + $theme_datacolor = array(array(248, 220, 1), array(9, 85, 187), array(42, 208, 255), array(0, 0, 0), array(120,120,120), array(253, 205, 102), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +} $theme_bgcolor = array(hexdec('F4'),hexdec('F4'),hexdec('F4')); $theme_bgcoloronglet = array(hexdec('DE'),hexdec('E7'),hexdec('EC')); From 401dc12b939c1e9c1ac4903db6dab1ae5f1bd358 Mon Sep 17 00:00:00 2001 From: John Botella Date: Wed, 7 Aug 2019 12:15:55 +0200 Subject: [PATCH 071/228] Add color blind option in body for css impact --- htdocs/core/class/dolgraph.class.php | 2 +- htdocs/main.inc.php | 7 +++++++ htdocs/theme/eldy/theme_vars.inc.php | 4 ++-- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/htdocs/core/class/dolgraph.class.php b/htdocs/core/class/dolgraph.class.php index 6bc20742821..5c45eb5836d 100644 --- a/htdocs/core/class/dolgraph.class.php +++ b/htdocs/core/class/dolgraph.class.php @@ -96,7 +96,7 @@ class DolGraph */ public function __construct($library = 'jflot') { - global $conf, $user; + global $conf; global $theme_bordercolor, $theme_datacolor, $theme_bgcolor; // To use old feature diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index 7b983ca05eb..e1a1f333d1d 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -902,6 +902,9 @@ elseif (! empty($user->conf->MAIN_OPTIMIZEFORTEXTBROWSER)) $conf->global->MAIN_OPTIMIZEFORTEXTBROWSER=$user->conf->MAIN_OPTIMIZEFORTEXTBROWSER; } +// set MAIN_OPTIMIZEFORCOLORBLIND +$conf->global->MAIN_OPTIMIZEFORCOLORBLIND=$user->conf->MAIN_OPTIMIZEFORCOLORBLIND; + // Set terminal output option according to conf->browser. if (GETPOST('dol_hide_leftmenu', 'int') || ! empty($_SESSION['dol_hide_leftmenu'])) $conf->dol_hide_leftmenu=1; if (GETPOST('dol_hide_topmenu', 'int') || ! empty($_SESSION['dol_hide_topmenu'])) $conf->dol_hide_topmenu=1; @@ -1087,6 +1090,10 @@ if (! function_exists("llxHeader")) if ($mainmenu != 'website') $tmpcsstouse=$morecssonbody; // We do not use sidebar-collpase by default to have menuhider open by default. } + if(!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)){ + $tmpcsstouse.= ' colorblind-'.strip_tags($conf->global->MAIN_OPTIMIZEFORCOLORBLIND); + } + print '' . "\n"; // top menu and left menu area diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index 1fc1acb32bc..a1ff5120c27 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -30,10 +30,10 @@ * if (is_readable($var_file)) include $var_file; */ -global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet, $user; +global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); $theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250,190,30), array(221, 75, 57), array(0,166,90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); -if(!empty($user) && !empty($user->conf->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by graph +if(!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php { // for now we use the same configuration for all types of color blind $theme_datacolor = array(array(248, 220, 1), array(9, 85, 187), array(42, 208, 255), array(0, 0, 0), array(120,120,120), array(253, 205, 102), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); From 9e8843370691fc7b5e9b18551360e68ed7e8d55e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 7 Aug 2019 12:59:27 +0200 Subject: [PATCH 072/228] add intval to evalmath class --- htdocs/includes/evalmath/evalmath.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/includes/evalmath/evalmath.class.php b/htdocs/includes/evalmath/evalmath.class.php index 9426e82a8ff..9d970aed789 100644 --- a/htdocs/includes/evalmath/evalmath.class.php +++ b/htdocs/includes/evalmath/evalmath.class.php @@ -98,7 +98,7 @@ class EvalMath 'sin','sinh','arcsin','asin','arcsinh','asinh', 'cos','cosh','arccos','acos','arccosh','acosh', 'tan','tanh','arctan','atan','arctanh','atanh', - 'sqrt','abs','ln','log'); + 'sqrt','abs','ln','log','intval'); /** * Constructor From 28100f67acf32391d8c7d1048db92ed6c803d8ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 7 Aug 2019 13:25:14 +0200 Subject: [PATCH 073/228] Update llx_c_price_expression.sql --- htdocs/install/mysql/tables/llx_c_price_expression.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/tables/llx_c_price_expression.sql b/htdocs/install/mysql/tables/llx_c_price_expression.sql index 4c1788e4276..085f60fe537 100755 --- a/htdocs/install/mysql/tables/llx_c_price_expression.sql +++ b/htdocs/install/mysql/tables/llx_c_price_expression.sql @@ -20,5 +20,5 @@ create table llx_c_price_expression ( rowid integer AUTO_INCREMENT PRIMARY KEY, title varchar(20) NOT NULL, - expression varchar(80) NOT NULL + expression varchar(255) NOT NULL )ENGINE=innodb; From d55377981c6ebaf0b41bf6e56f91ee1265d0fdbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 7 Aug 2019 13:27:55 +0200 Subject: [PATCH 074/228] Update 10.0.0-11.0.0.sql --- htdocs/install/mysql/migration/10.0.0-11.0.0.sql | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/install/mysql/migration/10.0.0-11.0.0.sql b/htdocs/install/mysql/migration/10.0.0-11.0.0.sql index bd556d089cd..63a71d59f44 100644 --- a/htdocs/install/mysql/migration/10.0.0-11.0.0.sql +++ b/htdocs/install/mysql/migration/10.0.0-11.0.0.sql @@ -71,4 +71,6 @@ create table llx_payment_salary_extrafields ALTER TABLE llx_payment_salary_extrafields ADD INDEX idx_payment_salary_extrafields (fk_object); +ALTER TABLE llx_c_price_expression MODIFY COLUMN expression varchar(255) NOT NULL; + UPDATE llx_bank_url set url = REPLACE( url, 'compta/salaries/', 'salaries/'); From 372eddf0c6fbea4e06351f9085935c59fffa3fad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Wed, 7 Aug 2019 13:49:14 +0200 Subject: [PATCH 075/228] Update societe.class.php --- htdocs/societe/class/societe.class.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index 6d936e5ce65..59b516fd96e 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -2167,6 +2167,8 @@ class Societe extends CommonObject { $label.= '
' . $langs->trans('Name') . ': '. $this->name; if (! empty($this->name_alias)) $label.=' ('.$this->name_alias.')'; + } + if (! empty($this->email)) { $label.= '
' . $langs->trans('Email') . ': '. $this->email; } if (! empty($this->country_code)) From 450878cd92bacf2498eff0a9c3a005595f483c4f Mon Sep 17 00:00:00 2001 From: John Botella Date: Wed, 7 Aug 2019 15:13:59 +0200 Subject: [PATCH 076/228] Fix color deuteranopia --- htdocs/theme/eldy/theme_vars.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index a1ff5120c27..5472d5283f5 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -36,7 +36,7 @@ $theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250,190, if(!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php { // for now we use the same configuration for all types of color blind - $theme_datacolor = array(array(248, 220, 1), array(9, 85, 187), array(42, 208, 255), array(0, 0, 0), array(120,120,120), array(253, 205, 102), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); + $theme_datacolor = array(array(248, 220, 1), array(9, 85, 187), array(42, 208, 255), array(0, 0, 0), array(169, 169, 169), array(253, 102, 136), array(120, 154, 190), array(146, 146, 55), array(0, 52, 251), array(196, 226, 161), array(222, 160, 41), array(85,135,150), array(150,135,80), array(150,80,150)); } $theme_bgcolor = array(hexdec('F4'),hexdec('F4'),hexdec('F4')); From ef285a87a83012a000f74c7744b083dab4473ad0 Mon Sep 17 00:00:00 2001 From: Je2fb <46494485+Je2fb@users.noreply.github.com> Date: Wed, 7 Aug 2019 17:16:34 +0200 Subject: [PATCH 077/228] Update price_parser.class.php Calculation with supplier_min_price work --- htdocs/product/dynamic_price/class/price_parser.class.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/htdocs/product/dynamic_price/class/price_parser.class.php b/htdocs/product/dynamic_price/class/price_parser.class.php index dffb8ee0b2c..6706e9e4b0f 100644 --- a/htdocs/product/dynamic_price/class/price_parser.class.php +++ b/htdocs/product/dynamic_price/class/price_parser.class.php @@ -261,7 +261,9 @@ class PriceParser //Get the supplier min $productFournisseur = new ProductFournisseur($this->db); - $supplier_min_price = $productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0); + //$supplier_min_price = $productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0); + if ($productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0) > 0) + $supplier_min_price = $productFournisseur->fourn_price; //Accessible values by expressions $extra_values = array_merge($extra_values, array( From af4d5aa549508ef6d71cdfabf915e1110493162a Mon Sep 17 00:00:00 2001 From: John Botella Date: Wed, 7 Aug 2019 17:22:59 +0200 Subject: [PATCH 078/228] Fix color badges and status for color blind --- htdocs/theme/eldy/badges.inc.php | 107 ++++++++++++++++++--------- htdocs/theme/eldy/theme_vars.inc.php | 11 +++ 2 files changed, 81 insertions(+), 37 deletions(-) diff --git a/htdocs/theme/eldy/badges.inc.php b/htdocs/theme/eldy/badges.inc.php index 984315b0bde..0f635941a8e 100644 --- a/htdocs/theme/eldy/badges.inc.php +++ b/htdocs/theme/eldy/badges.inc.php @@ -115,6 +115,17 @@ a.badge-warning:focus, a.badge-warning:hover { background-color: ; } +/* WARNING colorblind */ +body[class^="colorblind-"] .badge-warning { + background-color: ; + } +body[class^="colorblind-"] a.badge-warning.focus,body[class^="colorblind-"] a.badge-warning:focus { + box-shadow: 0 0 0 0.2rem ; +} +body[class^="colorblind-"] a.badge-warning:focus, a.badge-warning:hover { + background-color: ; +} + /* INFO */ .badge-info { color: #fff !important; @@ -160,44 +171,66 @@ a.badge-dark:focus, a.badge-dark:hover { /* * STATUS BADGES */ - -/* Default Status */ - expemple $badgeStatusValidate, $badgeStatusClosed, $badgeStatusActive .... @@ -91,3 +96,9 @@ $badgeStatus6='#cad2d2'; $badgeStatus7='#baa32b'; $badgeStatus8='#be3013'; $badgeStatus9='#e7f0f0'; + +// status color ajustement for color blind +$colorblind_deuteranopes_badgeStatus4=$colorblind_deuteranopes_badgeStatus7=$colorblind_deuteranopes_badgeSuccess; //! text color black +$colorblind_deuteranopes_badgeStatus_textColor4=$colorblind_deuteranopes_badgeStatus_textColor7='#000'; +$colorblind_deuteranopes_badgeStatus1=$colorblind_deuteranopes_badgeWarning; +$colorblind_deuteranopes_badgeStatus_textColor1='#000'; From 322ec32ff53a442a82838ce521429df74f2a1fb2 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Wed, 7 Aug 2019 20:16:53 +0200 Subject: [PATCH 079/228] FIX duration when creating service --- htdocs/product/card.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/card.php b/htdocs/product/card.php index 847c6325b50..ca3cec982df 100644 --- a/htdocs/product/card.php +++ b/htdocs/product/card.php @@ -1028,7 +1028,7 @@ else if ($type == 1) { print ''.$langs->trans("Duration").''; - print ''; + print ''; print $formproduct->selectMeasuringUnits("duration_unit", "time", GETPOST('duration_value', 'alpha'), 0, 1); print ''; } From 4008ddc5670c3a6dd12df0349927704932dc5b55 Mon Sep 17 00:00:00 2001 From: Je2fb <46494485+Je2fb@users.noreply.github.com> Date: Thu, 8 Aug 2019 09:33:03 +0200 Subject: [PATCH 080/228] Update price_parser.class.php --- htdocs/product/dynamic_price/class/price_parser.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/dynamic_price/class/price_parser.class.php b/htdocs/product/dynamic_price/class/price_parser.class.php index 6706e9e4b0f..32cb8d7a71c 100644 --- a/htdocs/product/dynamic_price/class/price_parser.class.php +++ b/htdocs/product/dynamic_price/class/price_parser.class.php @@ -263,7 +263,7 @@ class PriceParser $productFournisseur = new ProductFournisseur($this->db); //$supplier_min_price = $productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0); if ($productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0) > 0) - $supplier_min_price = $productFournisseur->fourn_price; + $supplier_min_price = $productFournisseur->fourn_unitprice; //Accessible values by expressions $extra_values = array_merge($extra_values, array( From 1a592f8f693ba678f1da338604dff1be8370a79b Mon Sep 17 00:00:00 2001 From: Je2fb <46494485+Je2fb@users.noreply.github.com> Date: Thu, 8 Aug 2019 09:34:59 +0200 Subject: [PATCH 081/228] Update price_parser.class.php --- htdocs/product/dynamic_price/class/price_parser.class.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/product/dynamic_price/class/price_parser.class.php b/htdocs/product/dynamic_price/class/price_parser.class.php index 32cb8d7a71c..867fd7d8f9f 100644 --- a/htdocs/product/dynamic_price/class/price_parser.class.php +++ b/htdocs/product/dynamic_price/class/price_parser.class.php @@ -261,7 +261,6 @@ class PriceParser //Get the supplier min $productFournisseur = new ProductFournisseur($this->db); - //$supplier_min_price = $productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0); if ($productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0) > 0) $supplier_min_price = $productFournisseur->fourn_unitprice; From ae144a69101586788476c7bedfd293ada5f572b3 Mon Sep 17 00:00:00 2001 From: VESSILLER Date: Thu, 8 Aug 2019 17:31:16 +0200 Subject: [PATCH 082/228] NEW compute column value from others columns in import module --- .../modules/import/import_csv.modules.php | 23 +++++++++++++++++-- .../modules/import/import_xlsx.modules.php | 23 +++++++++++++++++-- 2 files changed, 42 insertions(+), 4 deletions(-) diff --git a/htdocs/core/modules/import/import_csv.modules.php b/htdocs/core/modules/import/import_csv.modules.php index 0a60d9dc0ae..606b23e2767 100644 --- a/htdocs/core/modules/import/import_csv.modules.php +++ b/htdocs/core/modules/import/import_csv.modules.php @@ -581,8 +581,27 @@ class ImportCsv extends ModeleImports if (is_numeric($defaultref) && $defaultref <= 0) $defaultref=''; $newval=$defaultref; } - - + elseif ($objimport->array_import_convertvalue[0][$val]['rule']=='compute') + { + $file=(empty($objimport->array_import_convertvalue[0][$val]['classfile'])?$objimport->array_import_convertvalue[0][$val]['file']:$objimport->array_import_convertvalue[0][$val]['classfile']); + $class=$objimport->array_import_convertvalue[0][$val]['class']; + $method=$objimport->array_import_convertvalue[0][$val]['method']; + $resultload = dol_include_once($file); + if (empty($resultload)) + { + dol_print_error('', 'Error trying to call file='.$file.', class='.$class.', method='.$method); + break; + } + $classinstance=new $class($this->db); + $res = call_user_func_array(array($classinstance, $method), array(&$arrayrecord)); + if ($res<0) { + if (!empty($objimport->array_import_convertvalue[0][$val]['dict'])) $this->errors[$error]['lib']=$langs->trans('ErrorFieldValueNotIn', $key, $newval, 'code', $langs->transnoentitiesnoconv($objimport->array_import_convertvalue[0][$val]['dict'])); + else $this->errors[$error]['lib']='ErrorFieldValueNotIn'; + $this->errors[$error]['type']='FOREIGNKEY'; + $errorforthistable++; + $error++; + } + } elseif ($objimport->array_import_convertvalue[0][$val]['rule']=='numeric') { $newval = price2num($newval); diff --git a/htdocs/core/modules/import/import_xlsx.modules.php b/htdocs/core/modules/import/import_xlsx.modules.php index af9c0e2c412..66670247a4c 100644 --- a/htdocs/core/modules/import/import_xlsx.modules.php +++ b/htdocs/core/modules/import/import_xlsx.modules.php @@ -608,8 +608,27 @@ class ImportXlsx extends ModeleImports if (is_numeric($defaultref) && $defaultref <= 0) $defaultref=''; $newval=$defaultref; } - - + elseif ($objimport->array_import_convertvalue[0][$val]['rule']=='compute') + { + $file=(empty($objimport->array_import_convertvalue[0][$val]['classfile'])?$objimport->array_import_convertvalue[0][$val]['file']:$objimport->array_import_convertvalue[0][$val]['classfile']); + $class=$objimport->array_import_convertvalue[0][$val]['class']; + $method=$objimport->array_import_convertvalue[0][$val]['method']; + $resultload = dol_include_once($file); + if (empty($resultload)) + { + dol_print_error('', 'Error trying to call file='.$file.', class='.$class.', method='.$method); + break; + } + $classinstance=new $class($this->db); + $res = call_user_func_array(array($classinstance, $method), array(&$arrayrecord)); + if ($res<0) { + if (!empty($objimport->array_import_convertvalue[0][$val]['dict'])) $this->errors[$error]['lib']=$langs->trans('ErrorFieldValueNotIn', $key, $newval, 'code', $langs->transnoentitiesnoconv($objimport->array_import_convertvalue[0][$val]['dict'])); + else $this->errors[$error]['lib']='ErrorFieldValueNotIn'; + $this->errors[$error]['type']='FOREIGNKEY'; + $errorforthistable++; + $error++; + } + } elseif ($objimport->array_import_convertvalue[0][$val]['rule']=='numeric') { $newval = price2num($newval); From aa462bac23e11a42dbcb7958362391a8e6bd665d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Fri, 9 Aug 2019 09:25:48 +0200 Subject: [PATCH 083/228] Add empty index.html --- htdocs/compta/bank/index.html | 1 + 1 file changed, 1 insertion(+) create mode 100644 htdocs/compta/bank/index.html diff --git a/htdocs/compta/bank/index.html b/htdocs/compta/bank/index.html new file mode 100644 index 00000000000..8b137891791 --- /dev/null +++ b/htdocs/compta/bank/index.html @@ -0,0 +1 @@ + From 0b831ccdf73f7bd6bc8a5d1a59c270d4f0270fb1 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Fri, 9 Aug 2019 09:33:14 +0200 Subject: [PATCH 084/228] FIX better help message with multicompany --- htdocs/product/admin/product.php | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/htdocs/product/admin/product.php b/htdocs/product/admin/product.php index 67bca85cfe0..fff393ffc2a 100644 --- a/htdocs/product/admin/product.php +++ b/htdocs/product/admin/product.php @@ -556,7 +556,14 @@ if (! empty($conf->fournisseur->enabled)) $rowspan++; print ''; -print ''.$langs->trans("PricingRule").''; +if (empty($conf->multicompany->enabled)) +{ + print ''.$langs->trans("PricingRule").''; +} +else +{ + print ''.$form->textwithpicto($langs->trans("PricingRule"), $langs->trans("SamePriceAlsoForSharedCompanies"), 1).''; +} print ''; $current_rule = 'PRODUCT_PRICE_UNIQ'; if (!empty($conf->global->PRODUIT_MULTIPRICES)) $current_rule='PRODUIT_MULTIPRICES'; @@ -564,10 +571,6 @@ if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY)) $current_rule='PRODUI if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES)) $current_rule='PRODUIT_CUSTOMER_PRICES'; if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES)) $current_rule='PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES'; print $form->selectarray("princingrule", $select_pricing_rules, $current_rule); -if ( empty($conf->multicompany->enabled)) -{ - print $langs->trans("SamePriceAlsoForSharedCompanies"); -} print ''; print ''; print ''; From ae4efe9b75121284c97a5f2dad99aa2fbb0f235a Mon Sep 17 00:00:00 2001 From: Abbes Bahfir Date: Fri, 9 Aug 2019 10:02:41 +0100 Subject: [PATCH 085/228] fix:this is not accessible in static context --- htdocs/debugbar/class/TraceableDB.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/debugbar/class/TraceableDB.php b/htdocs/debugbar/class/TraceableDB.php index 775c2a7c300..db84d3f9fd0 100644 --- a/htdocs/debugbar/class/TraceableDB.php +++ b/htdocs/debugbar/class/TraceableDB.php @@ -143,7 +143,7 @@ class TraceableDB extends DoliDB */ public static function convertSQLFromMysql($line, $type = 'ddl') { - return $this->db->convertSQLFromMysql($line); + return self::$db->convertSQLFromMysql($line); } // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps From d245ca371e27db2203b9ef7e5aa996405a1072f1 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 9 Aug 2019 23:45:06 +0200 Subject: [PATCH 086/228] Update societe.class.php --- htdocs/societe/class/societe.class.php | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index 59b516fd96e..01770e1bee1 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -2168,9 +2168,7 @@ class Societe extends CommonObject $label.= '
' . $langs->trans('Name') . ': '. $this->name; if (! empty($this->name_alias)) $label.=' ('.$this->name_alias.')'; } - if (! empty($this->email)) { - $label.= '
' . $langs->trans('Email') . ': '. $this->email; - } + $label.= '
' . $langs->trans('Email') . ': '. $this->email; if (! empty($this->country_code)) $label.= '
' . $langs->trans('Country') . ': '. $this->country_code; if (! empty($this->tva_intra) || (! empty($conf->global->SOCIETE_SHOW_FIELD_IN_TOOLTIP) && strpos($conf->global->SOCIETE_SHOW_FIELD_IN_TOOLTIP, 'vatnumber') !== false)) From 8f2786cf7b9fa87820d385a693a7dfa7bf2ed0ab Mon Sep 17 00:00:00 2001 From: Abbes Bahfir Date: Fri, 9 Aug 2019 10:02:41 +0100 Subject: [PATCH 087/228] fix:this is not accessible in static context --- htdocs/debugbar/class/TraceableDB.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/debugbar/class/TraceableDB.php b/htdocs/debugbar/class/TraceableDB.php index 4edc39a74af..d4bfd291602 100644 --- a/htdocs/debugbar/class/TraceableDB.php +++ b/htdocs/debugbar/class/TraceableDB.php @@ -143,7 +143,7 @@ class TraceableDB extends DoliDB */ public static function convertSQLFromMysql($line, $type = 'ddl') { - return $this->db->convertSQLFromMysql($line); + return self::$db->convertSQLFromMysql($line); } // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps From 2dee289fc6eda76e05cc185583f02b1578b4ed35 Mon Sep 17 00:00:00 2001 From: Je2fb <46494485+Je2fb@users.noreply.github.com> Date: Wed, 7 Aug 2019 17:16:34 +0200 Subject: [PATCH 088/228] Update price_parser.class.php Calculation with supplier_min_price work Conflicts: htdocs/product/dynamic_price/class/price_parser.class.php --- htdocs/product/dynamic_price/class/price_parser.class.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/htdocs/product/dynamic_price/class/price_parser.class.php b/htdocs/product/dynamic_price/class/price_parser.class.php index ef968f5e960..9b929f84946 100644 --- a/htdocs/product/dynamic_price/class/price_parser.class.php +++ b/htdocs/product/dynamic_price/class/price_parser.class.php @@ -262,9 +262,11 @@ class PriceParser return -1; } - //Get the supplier min - $productFournisseur = new ProductFournisseur($this->db); - $supplier_min_price = $productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0); + //Get the supplier min + $productFournisseur = new ProductFournisseur($this->db); + if ($productFournisseur->find_min_price_product_fournisseur($product->id, 0, 0) > 0) { + $supplier_min_price = $productFournisseur->fourn_unitprice; + } //Accessible values by expressions $extra_values = array_merge($extra_values, array( From 14fabeb3776bc7ff6a59dd2b96a4bca78348033d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 10 Aug 2019 00:46:20 +0200 Subject: [PATCH 089/228] Variable rangtouse -> ranktouse --- htdocs/comm/propal/class/propal.class.php | 8 ++++---- htdocs/commande/class/commande.class.php | 8 ++++---- htdocs/compta/facture/class/facture.class.php | 8 ++++---- htdocs/expedition/class/expedition.class.php | 8 ++++---- .../supplier_proposal/class/supplier_proposal.class.php | 8 ++++---- 5 files changed, 20 insertions(+), 20 deletions(-) diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 5faa94f2d08..598d34f7093 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -530,11 +530,11 @@ class Propal extends CommonObject $pu_ht_devise = $tabprice[19]; // Rang to use - $rangtouse = $rang; - if ($rangtouse == -1) + $ranktouse = $rang; + if ($ranktouse == -1) { $rangmax = $this->line_max($fk_parent_line); - $rangtouse = $rangmax + 1; + $ranktouse = $rangmax + 1; } // TODO A virer @@ -568,7 +568,7 @@ class Propal extends CommonObject $this->line->fk_remise_except=$fk_remise_except; $this->line->remise_percent=$remise_percent; $this->line->subprice=$pu_ht; - $this->line->rang=$rangtouse; + $this->line->rang=$ranktouse; $this->line->info_bits=$info_bits; $this->line->total_ht=$total_ht; $this->line->total_tva=$total_tva; diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index b1e2262f109..23d9db8f246 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -1457,11 +1457,11 @@ class Commande extends CommonOrder $pu_ht_devise = $tabprice[19]; // Rang to use - $rangtouse = $rang; - if ($rangtouse == -1) + $ranktouse = $rang; + if ($ranktouse == -1) { $rangmax = $this->line_max($fk_parent_line); - $rangtouse = $rangmax + 1; + $ranktouse = $rangmax + 1; } // TODO A virer @@ -1495,7 +1495,7 @@ class Commande extends CommonOrder $this->line->fk_remise_except=$fk_remise_except; $this->line->remise_percent=$remise_percent; $this->line->subprice=$pu_ht; - $this->line->rang=$rangtouse; + $this->line->rang=$ranktouse; $this->line->info_bits=$info_bits; $this->line->total_ht=$total_ht; $this->line->total_tva=$total_tva; diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index c64c42e2971..7f5dde15c59 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -2825,11 +2825,11 @@ class Facture extends CommonInvoice $pu_ht_devise = $tabprice[19]; // Rank to use - $rangtouse = $rang; - if ($rangtouse == -1) + $ranktouse = $rang; + if ($ranktouse == -1) { $rangmax = $this->line_max($fk_parent_line); - $rangtouse = $rangmax + 1; + $ranktouse = $rangmax + 1; } // Insert line @@ -2863,7 +2863,7 @@ class Facture extends CommonInvoice $this->line->date_start=$date_start; $this->line->date_end=$date_end; $this->line->ventil=$ventil; - $this->line->rang=$rangtouse; + $this->line->rang=$ranktouse; $this->line->info_bits=$info_bits; $this->line->fk_remise_except=$fk_remise_except; diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php index f484c2690a6..6200b14ce19 100644 --- a/htdocs/expedition/class/expedition.class.php +++ b/htdocs/expedition/class/expedition.class.php @@ -2593,11 +2593,11 @@ class ExpeditionLigne extends CommonObjectLine if (empty($this->rang)) $this->rang = 0; // Rank to use - $rangtouse = $this->rang; - if ($rangtouse == -1) + $ranktouse = $this->rang; + if ($ranktouse == -1) { $rangmax = $this->line_max($fk_expedition); - $rangtouse = $rangmax + 1; + $ranktouse = $rangmax + 1; } $sql = "INSERT INTO ".MAIN_DB_PREFIX."expeditiondet ("; @@ -2611,7 +2611,7 @@ class ExpeditionLigne extends CommonObjectLine $sql.= ", ".(empty($this->entrepot_id) ? 'NULL' : $this->entrepot_id); $sql.= ", ".$this->fk_origin_line; $sql.= ", ".$this->qty; - $sql.= ", ".$rangtouse; + $sql.= ", ".$ranktouse; $sql.= ")"; dol_syslog(get_class($this)."::insert", LOG_DEBUG); diff --git a/htdocs/supplier_proposal/class/supplier_proposal.class.php b/htdocs/supplier_proposal/class/supplier_proposal.class.php index a84f18f5b7b..546a93763a6 100644 --- a/htdocs/supplier_proposal/class/supplier_proposal.class.php +++ b/htdocs/supplier_proposal/class/supplier_proposal.class.php @@ -524,11 +524,11 @@ class SupplierProposal extends CommonObject $pu_ht_devise = $tabprice[19]; // Rang to use - $rangtouse = $rang; - if ($rangtouse == -1) + $ranktouse = $rang; + if ($ranktouse == -1) { $rangmax = $this->line_max($fk_parent_line); - $rangtouse = $rangmax + 1; + $ranktouse = $rangmax + 1; } // TODO A virer @@ -556,7 +556,7 @@ class SupplierProposal extends CommonObject $this->line->fk_product=$fk_product; $this->line->remise_percent=$remise_percent; $this->line->subprice=$pu_ht; - $this->line->rang=$rangtouse; + $this->line->rang=$ranktouse; $this->line->info_bits=$info_bits; $this->line->total_ht=$total_ht; $this->line->total_tva=$total_tva; From 9c92acadaa4a1b9a285947ba03b0b53558a325b2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 10 Aug 2019 01:51:50 +0200 Subject: [PATCH 090/228] Fix lang --- htdocs/langs/en_US/admin.lang | 9 --------- 1 file changed, 9 deletions(-) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 855d1fc8886..367ff6672a5 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1909,22 +1909,13 @@ WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramatical DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export -<<<<<<< HEAD InstanceUniqueID=Unique ID of the instance SmallerThan=Smaller than LargerThan=Larger than IfTrackingIDFoundEventWillBeLinked=Note that If a tracking ID is found into incoming email, the event will be automatically linked to the related objects. WithGMailYouCanCreateADedicatedPassword=With a GMail account, if you enabled the 2 steps validation, it is recommanded to create a dedicated second password for the application instead of using your own account passsword from https://myaccount.google.com/. -IFTTTSetup=IFTTT module setup -IFTTT_SERVICE_KEY=IFTTT Service key -IFTTT_DOLIBARR_ENDPOINT_SECUREKEY=Security key to secure the endpoint URL used by IFTTT to send messages to your Dolibarr. -IFTTTDesc=This module is designed to trigger events on IFTTT and/or to execute some action on external IFTTT triggers. -UrlForIFTTT=URL endpoint for IFTTT -YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined -======= ->>>>>>> branch '9.0' of git@github.com:Dolibarr/dolibarr.git From e21d6289eade059e5bcdb5a0e197b4d7a8c67815 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 10 Aug 2019 02:09:59 +0200 Subject: [PATCH 091/228] FIX Can't add a new chart of account --- htdocs/accountancy/admin/accountmodel.php | 53 +++-------------------- 1 file changed, 6 insertions(+), 47 deletions(-) diff --git a/htdocs/accountancy/admin/accountmodel.php b/htdocs/accountancy/admin/accountmodel.php index 102d268e218..d19d3d07dca 100644 --- a/htdocs/accountancy/admin/accountmodel.php +++ b/htdocs/accountancy/admin/accountmodel.php @@ -156,17 +156,8 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) $ok=1; foreach ($listfield as $f => $value) { - if ($value == 'country_id' && in_array($tablib[$id], array('DictionaryVAT','DictionaryRegion','DictionaryCompanyType','DictionaryHolidayTypes','DictionaryRevenueStamp','DictionaryAccountancyCategory','Pcg_version'))) continue; // For some pages, country is not mandatory - if ($value == 'country' && in_array($tablib[$id], array('DictionaryCanton','DictionaryCompanyType','DictionaryRevenueStamp'))) continue; // For some pages, country is not mandatory - if ($value == 'localtax1' && empty($_POST['localtax1_type'])) continue; - if ($value == 'localtax2' && empty($_POST['localtax2_type'])) continue; - if ($value == 'color' && empty($_POST['color'])) continue; - if ($value == 'formula' && empty($_POST['formula'])) continue; - if ((! isset($_POST[$value]) || $_POST[$value]=='') - && (! in_array($listfield[$f], array('decalage','module','accountancy_code','accountancy_code_sell','accountancy_code_buy')) // Fields that are not mandatory - && (! ($id == 10 && $listfield[$f] == 'code')) // Code is mandatory fir table 10 - ) - ) + if ($value == 'country_id' && in_array($tablib[$id], array('Pcg_version'))) continue; // For some pages, country is not mandatory + if ((! isset($_POST[$value]) || $_POST[$value]=='')) { $ok=0; $fieldnamekey=$listfield[$f]; @@ -174,19 +165,6 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) if ($fieldnamekey == 'pcg_version') $fieldnamekey='Pcg_version'; if ($fieldnamekey == 'libelle' || ($fieldnamekey == 'label')) $fieldnamekey='Label'; - if ($fieldnamekey == 'libelle_facture') $fieldnamekey = 'LabelOnDocuments'; - if ($fieldnamekey == 'nbjour') $fieldnamekey='NbOfDays'; - if ($fieldnamekey == 'decalage') $fieldnamekey='Offset'; - if ($fieldnamekey == 'module') $fieldnamekey='Module'; - if ($fieldnamekey == 'code') $fieldnamekey = 'Code'; - if ($fieldnamekey == 'note') $fieldnamekey = 'Note'; - if ($fieldnamekey == 'taux') $fieldnamekey = 'Rate'; - if ($fieldnamekey == 'type') $fieldnamekey = 'Type'; - if ($fieldnamekey == 'position') $fieldnamekey = 'Position'; - if ($fieldnamekey == 'unicode') $fieldnamekey = 'Unicode'; - if ($fieldnamekey == 'deductible') $fieldnamekey = 'Deductible'; - if ($fieldnamekey == 'sortorder') $fieldnamekey = 'SortOrder'; - if ($fieldnamekey == 'category_type') $fieldnamekey = 'Calculated'; setEventMessages($langs->transnoentities("ErrorFieldRequired", $langs->transnoentities($fieldnamekey)), null, 'errors'); } @@ -196,9 +174,9 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) $ok=0; setEventMessages($langs->transnoentities('ErrorReservedTypeSystemSystemAuto'), null, 'errors'); } - if (isset($_POST["code"])) + if (isset($_POST["pcg_version"])) { - if ($_POST["code"]=='0') + if ($_POST["pcg_version"]=='0') { $ok=0; setEventMessages($langs->transnoentities('ErrorCodeCantContainZero'), null, 'errors'); @@ -211,28 +189,9 @@ if (GETPOST('actionadd', 'alpha') || GETPOST('actionmodify', 'alpha')) } if (isset($_POST["country"]) && ($_POST["country"]=='0') && ($id != 2)) { - if (in_array($tablib[$id], array('DictionaryCompanyType','DictionaryHolidayTypes'))) // Field country is no mandatory for such dictionaries - { - $_POST["country"]=''; - } - else - { - $ok=0; - setEventMessages($langs->transnoentities("ErrorFieldRequired", $langs->transnoentities("Country")), null, 'errors'); - } + $ok=0; + setEventMessages($langs->transnoentities("ErrorFieldRequired", $langs->transnoentities("Country")), null, 'errors'); } - if (! is_numeric($_POST["code"])) - { - $ok=0; - setEventMessages($langs->transnoentities("ErrorFieldMustBeANumeric", $langs->transnoentities("Code")), null, 'errors'); - } - - // Clean some parameters - if (isset($_POST["localtax1"]) && empty($_POST["localtax1"])) $_POST["localtax1"]='0'; // If empty, we force to 0 - if (isset($_POST["localtax2"]) && empty($_POST["localtax2"])) $_POST["localtax2"]='0'; // If empty, we force to 0 - if ($_POST["accountancy_code"] <= 0) $_POST["accountancy_code"]=''; // If empty, we force to null - if ($_POST["accountancy_code_sell"] <= 0) $_POST["accountancy_code_sell"]=''; // If empty, we force to null - if ($_POST["accountancy_code_buy"] <= 0) $_POST["accountancy_code_buy"]=''; // If empty, we force to null // Si verif ok et action add, on ajoute la ligne if ($ok && GETPOST('actionadd', 'alpha')) From 3351a1687c2f9a7a37b0b9ec5c4fdc32b8f4acba Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 10 Aug 2019 02:17:07 +0200 Subject: [PATCH 092/228] Fix phpcs --- htdocs/product/dynamic_price/class/price_parser.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/dynamic_price/class/price_parser.class.php b/htdocs/product/dynamic_price/class/price_parser.class.php index f783a95e57d..016917372ad 100644 --- a/htdocs/product/dynamic_price/class/price_parser.class.php +++ b/htdocs/product/dynamic_price/class/price_parser.class.php @@ -271,7 +271,7 @@ class PriceParser } $supplier_min_price = $productFournisseur->fourn_unitprice; - //Accessible values by expressions + //Accessible values by expressions $extra_values = array_merge($extra_values, array( "supplier_min_price" => $supplier_min_price, )); From 33cf4d8417ee771b81c46773c1ef9e65f98cba6c Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 10 Aug 2019 09:12:15 +0200 Subject: [PATCH 093/228] Update product.class.php --- htdocs/product/class/product.class.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 4b685af983d..582d6f59918 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -2788,11 +2788,10 @@ class Product extends CommonObject public function load_stats_facture($socid = 0) { // phpcs:enable - global $conf; - global $user; + global $db, $conf, $user; $sql = "SELECT COUNT(DISTINCT f.fk_soc) as nb_customers, COUNT(DISTINCT f.rowid) as nb,"; - $sql.= " COUNT(fd.rowid) as nb_rows, SUM(CASE WHEN type != 2 THEN fd.qty ELSE -(fd.qty) END) as qty"; + $sql.= " COUNT(fd.rowid) as nb_rows, sum(".$db->ifsql('f.type != 2', 'fd.qty', 'fd.qty * -1').") as qty"; $sql.= " FROM ".MAIN_DB_PREFIX."facturedet as fd"; $sql.= ", ".MAIN_DB_PREFIX."facture as f"; $sql.= ", ".MAIN_DB_PREFIX."societe as s"; From 4f69be2c2c10040f845f58f5425d05f7ce4a193b Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 10 Aug 2019 09:12:40 +0200 Subject: [PATCH 094/228] Update product.class.php --- htdocs/product/class/product.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 582d6f59918..97aecd8d64c 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -2791,7 +2791,7 @@ class Product extends CommonObject global $db, $conf, $user; $sql = "SELECT COUNT(DISTINCT f.fk_soc) as nb_customers, COUNT(DISTINCT f.rowid) as nb,"; - $sql.= " COUNT(fd.rowid) as nb_rows, sum(".$db->ifsql('f.type != 2', 'fd.qty', 'fd.qty * -1').") as qty"; + $sql.= " COUNT(fd.rowid) as nb_rows, SUM(".$db->ifsql('f.type != 2', 'fd.qty', 'fd.qty * -1').") as qty"; $sql.= " FROM ".MAIN_DB_PREFIX."facturedet as fd"; $sql.= ", ".MAIN_DB_PREFIX."facture as f"; $sql.= ", ".MAIN_DB_PREFIX."societe as s"; From 32d1c787fc26edd4623109c972511e075b4ce438 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 10 Aug 2019 09:37:03 +0200 Subject: [PATCH 095/228] Update paymentmodes.php --- htdocs/societe/paymentmodes.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/societe/paymentmodes.php b/htdocs/societe/paymentmodes.php index 1bbd60a577f..8e1ad71f5b0 100644 --- a/htdocs/societe/paymentmodes.php +++ b/htdocs/societe/paymentmodes.php @@ -838,7 +838,7 @@ if ($socid && $action != 'edit' && $action != 'create' && $action != 'editcard' if (! empty($conf->stripe->enabled) && ! empty($conf->stripeconnect->enabled) && $conf->global->MAIN_FEATURES_LEVEL >= 2) { $permissiontowrite = $user->rights->societe->creer; - $stripesupplieracc = $stripe->getStripeAccount($service, $object->id); // Get Stripe OAuth connect account (no network access here) + $stripesupplieracc = $stripe->getStripeAccount($service, $object->id); // Get Stripe OAuth connect account (no network access here) // Stripe customer key 'cu_....' stored into llx_societe_account print ''; From 0ce22d68ef2ba130df0c80e73b3519e5b2407296 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Sat, 10 Aug 2019 09:43:26 +0200 Subject: [PATCH 096/228] Update product.class.php --- htdocs/product/class/product.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 97aecd8d64c..8d65a88acad 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -2788,7 +2788,7 @@ class Product extends CommonObject public function load_stats_facture($socid = 0) { // phpcs:enable - global $db, $conf, $user; + global $db, $conf, $user; $sql = "SELECT COUNT(DISTINCT f.fk_soc) as nb_customers, COUNT(DISTINCT f.rowid) as nb,"; $sql.= " COUNT(fd.rowid) as nb_rows, SUM(".$db->ifsql('f.type != 2', 'fd.qty', 'fd.qty * -1').") as qty"; From 909dbfab96b946e13426cc2acea5e9572b6f4e22 Mon Sep 17 00:00:00 2001 From: wdammak <26695620+wdammak@users.noreply.github.com> Date: Sat, 10 Aug 2019 16:35:02 +0200 Subject: [PATCH 097/228] Update objectline_edit.tpl.php optimization code (double declaration deletion) --- htdocs/core/tpl/objectline_edit.tpl.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/core/tpl/objectline_edit.tpl.php b/htdocs/core/tpl/objectline_edit.tpl.php index ddb737bbdd6..bac9ff997bc 100644 --- a/htdocs/core/tpl/objectline_edit.tpl.php +++ b/htdocs/core/tpl/objectline_edit.tpl.php @@ -116,7 +116,6 @@ $coldisplay=0; $toolbarname='dolibarr_details'; if (! empty($conf->global->FCKEDITOR_ENABLE_DETAILS_FULL)) $toolbarname='dolibarr_notes'; $doleditor=new DolEditor('product_desc', $line->description, '', (empty($conf->global->MAIN_DOLEDITOR_HEIGHT)?164:$conf->global->MAIN_DOLEDITOR_HEIGHT), $toolbarname, '', false, true, $enable, $nbrows, '98%'); - $doleditor=new DolEditor('product_desc', $line->description, '', (empty($conf->global->MAIN_DOLEDITOR_HEIGHT)?164:$conf->global->MAIN_DOLEDITOR_HEIGHT), $toolbarname, '', false, true, $enable, $nbrows, '98%'); $doleditor->Create(); } else { print ''; From 5ca988b3d2081b371785d4625482132e2df0d753 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 02:36:15 +0200 Subject: [PATCH 098/228] Fix position of requests --- htdocs/install/mysql/data/llx_c_tva.sql | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/htdocs/install/mysql/data/llx_c_tva.sql b/htdocs/install/mysql/data/llx_c_tva.sql index 17c8b7489ee..26c2acdf308 100644 --- a/htdocs/install/mysql/data/llx_c_tva.sql +++ b/htdocs/install/mysql/data/llx_c_tva.sql @@ -128,12 +128,6 @@ insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values (11 insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values (1162, 116, '7','0','VAT reduced rate',1); insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values (1163, 116, '0','0','VAT rate 0',1); --- ITALY (id country=3) -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 31, 3, '22','0','VAT standard rate',1); -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 32, 3, '10','0','VAT reduced rate',1); -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 33, 3, '4','0','VAT super-reduced rate',1); -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 34, 3, '0','0','VAT Rate 0',1); - -- INDIA (id country=117) insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values (1171, 117, '0','0','VAT Rate 0', 0); @@ -153,6 +147,12 @@ insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 8 insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 84, 8, '9','0','VAT reduced rate',1); insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 85, 8, '4.8','0','VAT reduced rate',1); +-- ITALY (id country=3) +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 31, 3, '22','0','VAT standard rate',1); +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 32, 3, '10','0','VAT reduced rate',1); +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 33, 3, '4','0','VAT super-reduced rate',1); +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 34, 3, '0','0','VAT Rate 0',1); + -- IVORY COST (id country=21) insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,localtax1,localtax1_type,localtax2,localtax2_type,note,active) values (211, 21, '0','0',0,0,0,0,'IVA Rate 0',1); insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,localtax1,localtax1_type,localtax2,localtax2_type,note,active) values (212, 21, '18','0',7.5,2,0,0,'IVA standard rate',1); From 49e2f447a8ec43cec3deb5a0e2af69628bb97f46 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 02:41:27 +0200 Subject: [PATCH 099/228] Fix responsive --- htdocs/admin/dict.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index 87e072b8d7e..c2b61fe378e 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -1058,7 +1058,7 @@ if ($id) $valuetoshow=$langs->trans($valuetoshow); // try to translate $class=''; - if ($fieldlist[$field]=='pos') { $valuetoshow=$langs->trans("Position"); $class='width100'; } + if ($fieldlist[$field]=='pos') { $valuetoshow=$langs->trans("Position"); $class='maxwidth100'; } if ($fieldlist[$field]=='source') { $valuetoshow=$langs->trans("Contact"); } if ($fieldlist[$field]=='price') { $valuetoshow=$langs->trans("PriceUHT"); } if ($fieldlist[$field]=='taux') { @@ -1076,7 +1076,7 @@ if ($id) if ($tabname[$id] == MAIN_DB_PREFIX."c_paiement") $valuetoshow=$form->textwithtooltip($langs->trans("Type"), $langs->trans("TypePaymentDesc"), 2, 1, img_help(1, '')); else $valuetoshow=$langs->trans("Type"); } - if ($fieldlist[$field]=='code') { $valuetoshow=$langs->trans("Code"); $class='width100'; } + if ($fieldlist[$field]=='code') { $valuetoshow=$langs->trans("Code"); $class='maxwidth100'; } if ($fieldlist[$field]=='libelle' || $fieldlist[$field]=='label') { $valuetoshow=$form->textwithtooltip($langs->trans("Label"), $langs->trans("LabelUsedByDefault"), 2, 1, img_help(1, '')); @@ -1602,7 +1602,7 @@ if ($id) $class='tddict'; if ($fieldlist[$field] == 'note' && $id == 10) $class.=' tdoverflowmax200'; if ($fieldlist[$field] == 'tracking') $class.=' tdoverflowauto'; - if ($fieldlist[$field] == 'code') $class.=' width100'; + if ($fieldlist[$field] == 'code') $class.=' maxwidth100'; if ($fieldlist[$field] == 'position') $class.=' right'; if ($fieldlist[$field] == 'localtax1_type') $class.=' nowrap'; if ($fieldlist[$field] == 'localtax2_type') $class.=' nowrap'; @@ -1981,7 +1981,7 @@ function fieldList($fieldlist, $obj = '', $tabname = '', $context = '') } $classtd=''; $class=''; - if ($fieldlist[$field]=='code') $classtd='width100'; + if ($fieldlist[$field]=='code') $classtd='maxwidth100'; if (in_array($fieldlist[$field], array('pos', 'use_default', 'affect', 'delay', 'position', 'sortorder', 'sens', 'category_type'))) $class='maxwidth50'; if (in_array($fieldlist[$field], array('libelle', 'label', 'tracking'))) $class='quatrevingtpercent'; print ''; From 00660d4885aad0808db499ad25fabc3e584e0461 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 02:52:36 +0200 Subject: [PATCH 100/228] Fix responsive --- htdocs/admin/dict.php | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index c2b61fe378e..f68864fcc3d 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -1602,7 +1602,6 @@ if ($id) $class='tddict'; if ($fieldlist[$field] == 'note' && $id == 10) $class.=' tdoverflowmax200'; if ($fieldlist[$field] == 'tracking') $class.=' tdoverflowauto'; - if ($fieldlist[$field] == 'code') $class.=' maxwidth100'; if ($fieldlist[$field] == 'position') $class.=' right'; if ($fieldlist[$field] == 'localtax1_type') $class.=' nowrap'; if ($fieldlist[$field] == 'localtax2_type') $class.=' nowrap'; @@ -1780,7 +1779,6 @@ function fieldList($fieldlist, $obj = '', $tabname = '', $context = '') global $form; global $region_id; global $elementList,$sourceList,$localtax_typeList; - global $bc; $formadmin = new FormAdmin($db); $formcompany = new FormCompany($db); @@ -1981,7 +1979,7 @@ function fieldList($fieldlist, $obj = '', $tabname = '', $context = '') } $classtd=''; $class=''; - if ($fieldlist[$field]=='code') $classtd='maxwidth100'; + if ($fieldlist[$field]=='code') $class='maxwidth100'; if (in_array($fieldlist[$field], array('pos', 'use_default', 'affect', 'delay', 'position', 'sortorder', 'sens', 'category_type'))) $class='maxwidth50'; if (in_array($fieldlist[$field], array('libelle', 'label', 'tracking'))) $class='quatrevingtpercent'; print ''; From 0e9898041ec39b32ed2a07069b69d90963c3b723 Mon Sep 17 00:00:00 2001 From: JC Prieto Date: Mon, 12 Aug 2019 09:45:47 +0200 Subject: [PATCH 101/228] Setting NULL if not project --- htdocs/compta/sociales/class/chargesociales.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/compta/sociales/class/chargesociales.class.php b/htdocs/compta/sociales/class/chargesociales.class.php index 43228b202b8..c0aac835bba 100644 --- a/htdocs/compta/sociales/class/chargesociales.class.php +++ b/htdocs/compta/sociales/class/chargesociales.class.php @@ -317,7 +317,7 @@ class ChargeSociales extends CommonObject $sql.= ", date_ech='".$this->db->idate($this->date_ech)."'"; $sql.= ", periode='".$this->db->idate($this->periode)."'"; $sql.= ", amount='".price2num($this->amount, 'MT')."'"; - if($this->fk_project > 0) $sql.= ", fk_projet='".$this->db->escape($this->fk_project)."'"; + $sql.= ", fk_projet='".($this->fk_project > 0 ? $this->db->escape($this->fk_project) : NULL)."'"; $sql.= ", fk_user_modif=".$user->id; $sql.= " WHERE rowid=".$this->id; From f1c0442a773bb81286fa8df6ef44b756ea021972 Mon Sep 17 00:00:00 2001 From: Ferran Marcet Date: Mon, 12 Aug 2019 10:16:04 +0200 Subject: [PATCH 102/228] FIX: Add comment before protected functions --- .../core/modules/cheque/doc/pdf_blochet.class.php | 2 +- .../modules/commande/doc/pdf_einstein.modules.php | 6 ++++-- .../commande/doc/pdf_eratosthene.modules.php | 1 + .../modules/contract/doc/pdf_strato.modules.php | 3 +++ .../modules/expedition/doc/pdf_espadon.modules.php | 4 ++++ .../modules/expedition/doc/pdf_merou.modules.php | 4 +++- .../modules/expedition/doc/pdf_rouget.modules.php | 4 ++++ .../expensereport/doc/pdf_standard.modules.php | 3 +++ .../core/modules/facture/doc/pdf_crabe.modules.php | 13 ++++++++++--- .../core/modules/facture/doc/pdf_sponge.modules.php | 3 +++ .../modules/fichinter/doc/pdf_soleil.modules.php | 3 +++ .../modules/livraison/doc/pdf_typhon.modules.php | 4 ++++ .../modules/product/doc/pdf_standard.modules.php | 4 +++- .../modules/project/doc/pdf_baleine.modules.php | 4 +++- .../core/modules/project/doc/pdf_beluga.modules.php | 4 +++- .../modules/project/doc/pdf_timespent.modules.php | 4 +++- .../core/modules/propale/doc/pdf_azur.modules.php | 9 +++++++-- .../core/modules/propale/doc/pdf_cyan.modules.php | 3 +++ .../modules/reception/doc/pdf_squille.modules.php | 4 ++++ .../core/modules/stock/doc/pdf_standard.modules.php | 4 +++- .../modules/stock/doc/pdf_stdmovement.modules.php | 4 +++- .../supplier_invoice/pdf/pdf_canelle.modules.php | 5 +++++ .../supplier_order/pdf/pdf_cornas.modules.php | 8 ++++++-- .../supplier_order/pdf/pdf_muscadet.modules.php | 8 ++++++-- .../supplier_payment/doc/pdf_standard.modules.php | 8 +++++--- .../supplier_proposal/doc/pdf_aurore.modules.php | 8 ++++++-- 26 files changed, 103 insertions(+), 24 deletions(-) diff --git a/htdocs/core/modules/cheque/doc/pdf_blochet.class.php b/htdocs/core/modules/cheque/doc/pdf_blochet.class.php index 111c0a324ca..71866464084 100644 --- a/htdocs/core/modules/cheque/doc/pdf_blochet.class.php +++ b/htdocs/core/modules/cheque/doc/pdf_blochet.class.php @@ -376,7 +376,7 @@ class BordereauChequeBlochet extends ModeleChequeReceipts } } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index 64d289f1982..16bd84abc5b 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -648,6 +648,7 @@ class pdf_einstein extends ModelePDFCommandes } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show payments table @@ -663,7 +664,7 @@ class pdf_einstein extends ModelePDFCommandes // phpcs:enable } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show miscellaneous information (payment mode, payment term, ...) @@ -850,7 +851,7 @@ class pdf_einstein extends ModelePDFCommandes return $posy; } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show total to pay @@ -1112,6 +1113,7 @@ class pdf_einstein extends ModelePDFCommandes return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php index 012f3e9e998..fe0a3cb0570 100644 --- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php @@ -1300,6 +1300,7 @@ class pdf_eratosthene extends ModelePDFCommandes return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * diff --git a/htdocs/core/modules/contract/doc/pdf_strato.modules.php b/htdocs/core/modules/contract/doc/pdf_strato.modules.php index fda022a48c6..c022e46dbce 100644 --- a/htdocs/core/modules/contract/doc/pdf_strato.modules.php +++ b/htdocs/core/modules/contract/doc/pdf_strato.modules.php @@ -507,6 +507,7 @@ class pdf_strato extends ModelePDFContract } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -585,6 +586,7 @@ class pdf_strato extends ModelePDFContract $pdf->MultiCell($this->page_largeur-$this->marge_droite - $posmiddle - 5, 20, '', 1); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -764,6 +766,7 @@ class pdf_strato extends ModelePDFContract } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/expedition/doc/pdf_espadon.modules.php b/htdocs/core/modules/expedition/doc/pdf_espadon.modules.php index ebefeb9be92..eef7f6bba3a 100644 --- a/htdocs/core/modules/expedition/doc/pdf_espadon.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_espadon.modules.php @@ -648,6 +648,7 @@ class pdf_espadon extends ModelePdfExpedition } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show total to pay @@ -749,6 +750,7 @@ class pdf_espadon extends ModelePdfExpedition return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -796,6 +798,7 @@ class pdf_espadon extends ModelePdfExpedition } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1044,6 +1047,7 @@ class pdf_espadon extends ModelePdfExpedition $pdf->SetTextColor(0, 0, 0); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php b/htdocs/core/modules/expedition/doc/pdf_merou.modules.php index 048016c3ac6..bca46406310 100644 --- a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_merou.modules.php @@ -448,6 +448,7 @@ class pdf_merou extends ModelePdfExpedition } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -489,6 +490,7 @@ class pdf_merou extends ModelePdfExpedition $pdf->Rect(10, $tab_top, 190, $tab_height); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * @@ -517,7 +519,7 @@ class pdf_merou extends ModelePdfExpedition //} } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * diff --git a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php index 3466ca0be3e..89686ef2d27 100644 --- a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php @@ -664,6 +664,7 @@ class pdf_rouget extends ModelePdfExpedition } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show total to pay @@ -771,6 +772,7 @@ class pdf_rouget extends ModelePdfExpedition return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -859,6 +861,7 @@ class pdf_rouget extends ModelePdfExpedition } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1107,6 +1110,7 @@ class pdf_rouget extends ModelePdfExpedition $pdf->SetTextColor(0, 0, 0); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php index dd363d0f4fb..8aec0cc4105 100644 --- a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php @@ -620,6 +620,7 @@ class pdf_standard extends ModeleExpenseReport $pdf->writeHTMLCell($this->posxtva-$this->posxcomment-0.8, 4, $this->posxcomment-1, $curY, $comment, 0, 1); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -848,6 +849,7 @@ class pdf_standard extends ModeleExpenseReport } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -1075,6 +1077,7 @@ class pdf_standard extends ModeleExpenseReport } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php index 74152b7706e..2cd59d94ee7 100644 --- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php @@ -762,7 +762,8 @@ class pdf_crabe extends ModelePDFFactures } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show payments table * @@ -909,6 +910,7 @@ class pdf_crabe extends ModelePDFFactures } // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Function _tableau_versements_header * @@ -947,7 +949,8 @@ class pdf_crabe extends ModelePDFFactures $pdf->line($tab3_posx, $tab3_top-1+$tab3_height, $tab3_posx+$tab3_width, $tab3_top-1+$tab3_height); } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show miscellaneous information (payment mode, payment term, ...) * @@ -1106,7 +1109,8 @@ class pdf_crabe extends ModelePDFFactures } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show total to pay * @@ -1405,6 +1409,7 @@ class pdf_crabe extends ModelePDFFactures return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -1526,6 +1531,7 @@ class pdf_crabe extends ModelePDFFactures } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1801,6 +1807,7 @@ class pdf_crabe extends ModelePDFFactures return $top_shift; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php index b7ea86d305e..afdee523bbd 100644 --- a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php @@ -1509,6 +1509,7 @@ class pdf_sponge extends ModelePDFFactures return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -1561,6 +1562,7 @@ class pdf_sponge extends ModelePDFFactures } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1834,6 +1836,7 @@ class pdf_sponge extends ModelePDFFactures return $top_shift; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php index 8b6e7dd0d29..60ddda82efb 100644 --- a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php +++ b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php @@ -483,6 +483,7 @@ class pdf_soleil extends ModelePDFFicheinter } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -546,6 +547,7 @@ class pdf_soleil extends ModelePDFFicheinter } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -722,6 +724,7 @@ class pdf_soleil extends ModelePDFFicheinter } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php b/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php index 35c87e75c55..51fd70c9fa1 100644 --- a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php +++ b/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php @@ -637,6 +637,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder return 0; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show miscellaneous information (payment mode, payment term, ...) @@ -666,6 +667,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder $pdf->MultiCell($larg_sign, 2, $outputlangs->trans("ForCustomer").':', '', 'L'); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -731,6 +733,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -909,6 +912,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder $pdf->SetTextColor(0, 0, 60); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/product/doc/pdf_standard.modules.php b/htdocs/core/modules/product/doc/pdf_standard.modules.php index b5e7e05bb24..2c8a1441379 100644 --- a/htdocs/core/modules/product/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/product/doc/pdf_standard.modules.php @@ -587,7 +587,7 @@ class pdf_standard extends ModelePDFProduct } } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -694,6 +694,7 @@ class pdf_standard extends ModelePDFProduct } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -844,6 +845,7 @@ class pdf_standard extends ModelePDFProduct $pdf->SetTextColor(0, 0, 0); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/project/doc/pdf_baleine.modules.php b/htdocs/core/modules/project/doc/pdf_baleine.modules.php index a24ef28fdec..abd1afc95fc 100644 --- a/htdocs/core/modules/project/doc/pdf_baleine.modules.php +++ b/htdocs/core/modules/project/doc/pdf_baleine.modules.php @@ -522,7 +522,7 @@ class pdf_baleine extends ModelePDFProjects } } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -573,6 +573,7 @@ class pdf_baleine extends ModelePDFProjects $pdf->MultiCell($this->page_largeur - $this->marge_droite - $this->posxdatestart, 3, '', 0, 'C'); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -666,6 +667,7 @@ class pdf_baleine extends ModelePDFProjects */ } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/project/doc/pdf_beluga.modules.php b/htdocs/core/modules/project/doc/pdf_beluga.modules.php index 81f7c70f460..25f90770984 100644 --- a/htdocs/core/modules/project/doc/pdf_beluga.modules.php +++ b/htdocs/core/modules/project/doc/pdf_beluga.modules.php @@ -695,7 +695,7 @@ class pdf_beluga extends ModelePDFProjects } } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -746,6 +746,7 @@ class pdf_beluga extends ModelePDFProjects $pdf->MultiCell($this->page_largeur - $this->marge_droite - $this->posxdatestart, 3, '', 0, 'C'); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -815,6 +816,7 @@ class pdf_beluga extends ModelePDFProjects $pdf->SetTextColor(0, 0, 60); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/project/doc/pdf_timespent.modules.php b/htdocs/core/modules/project/doc/pdf_timespent.modules.php index db0eed6f296..eb810e2fb15 100644 --- a/htdocs/core/modules/project/doc/pdf_timespent.modules.php +++ b/htdocs/core/modules/project/doc/pdf_timespent.modules.php @@ -453,7 +453,7 @@ class pdf_timespent extends ModelePDFProjects } } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -504,6 +504,7 @@ class pdf_timespent extends ModelePDFProjects $pdf->MultiCell($this->page_largeur - $this->marge_droite - $this->posxdatestart, 3, '', 0, 'C'); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -597,6 +598,7 @@ class pdf_timespent extends ModelePDFProjects */ } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/htdocs/core/modules/propale/doc/pdf_azur.modules.php index 1e0b10522c3..14f4dfe8f9f 100644 --- a/htdocs/core/modules/propale/doc/pdf_azur.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_azur.modules.php @@ -833,6 +833,7 @@ class pdf_azur extends ModelePDFPropales } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show payments table @@ -848,7 +849,7 @@ class pdf_azur extends ModelePDFPropales // phpcs:enable } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show miscellaneous information (payment mode, payment term, ...) @@ -1029,7 +1030,7 @@ class pdf_azur extends ModelePDFPropales return $posy; } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show total to pay @@ -1306,6 +1307,7 @@ class pdf_azur extends ModelePDFPropales return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -1422,6 +1424,7 @@ class pdf_azur extends ModelePDFPropales } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1645,6 +1648,7 @@ class pdf_azur extends ModelePDFPropales return $top_shift; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * @@ -1661,6 +1665,7 @@ class pdf_azur extends ModelePDFPropales return pdf_pagefoot($pdf, $outputlangs, 'PROPOSAL_FREE_TEXT', $this->emetteur, $this->marge_basse, $this->marge_gauche, $this->page_hauteur, $object, $showdetails, $hidefreetext); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show area for the customer to sign diff --git a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php index 0071a2fdc1b..d8b20db9a40 100644 --- a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php @@ -1414,6 +1414,7 @@ class pdf_cyan extends ModelePDFPropales return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -1466,6 +1467,7 @@ class pdf_cyan extends ModelePDFPropales } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1691,6 +1693,7 @@ class pdf_cyan extends ModelePDFPropales return $top_shift; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/reception/doc/pdf_squille.modules.php b/htdocs/core/modules/reception/doc/pdf_squille.modules.php index f4a0053d9f0..9acd517370a 100644 --- a/htdocs/core/modules/reception/doc/pdf_squille.modules.php +++ b/htdocs/core/modules/reception/doc/pdf_squille.modules.php @@ -592,6 +592,7 @@ class pdf_squille extends ModelePdfReception } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show total to pay @@ -695,6 +696,7 @@ class pdf_squille extends ModelePdfReception return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -777,6 +779,7 @@ class pdf_squille extends ModelePdfReception } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1028,6 +1031,7 @@ class pdf_squille extends ModelePdfReception $pdf->SetTextColor(0, 0, 0); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/stock/doc/pdf_standard.modules.php b/htdocs/core/modules/stock/doc/pdf_standard.modules.php index 3a9eb914c4b..6fe21f15f9c 100644 --- a/htdocs/core/modules/stock/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/stock/doc/pdf_standard.modules.php @@ -753,7 +753,7 @@ class pdf_standard extends ModelePDFStock } } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -860,6 +860,7 @@ class pdf_standard extends ModelePDFStock $pdf->SetLineStyle(array('dash'=>0)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1089,6 +1090,7 @@ class pdf_standard extends ModelePDFStock $pdf->SetTextColor(0, 0, 0); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php b/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php index 31b5964afad..0c7c38a7659 100644 --- a/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php +++ b/htdocs/core/modules/stock/doc/pdf_stdmovement.modules.php @@ -809,7 +809,7 @@ class pdf_stdmovement extends ModelePDFMovement } } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -939,6 +939,7 @@ class pdf_stdmovement extends ModelePDFMovement $pdf->SetLineStyle(array('dash'=>0)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1168,6 +1169,7 @@ class pdf_stdmovement extends ModelePDFMovement $pdf->SetTextColor(0, 0, 0); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php index d9d84a686bf..2679f00d182 100644 --- a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php +++ b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php @@ -605,6 +605,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show total to pay @@ -814,6 +815,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -920,6 +922,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show payments table @@ -1013,6 +1016,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1226,6 +1230,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices return $top_shift; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/supplier_order/pdf/pdf_cornas.modules.php b/htdocs/core/modules/supplier_order/pdf/pdf_cornas.modules.php index 8aa5a4fc619..8c687a69001 100644 --- a/htdocs/core/modules/supplier_order/pdf/pdf_cornas.modules.php +++ b/htdocs/core/modules/supplier_order/pdf/pdf_cornas.modules.php @@ -800,7 +800,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders } } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show payments table @@ -816,7 +816,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders // phpcs:enable } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show miscellaneous information (payment mode, payment term, ...) @@ -882,6 +882,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders return $posy; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show total to pay @@ -1097,6 +1098,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -1167,6 +1169,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1412,6 +1415,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders return $top_shift; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php index 8c228d0ccaf..7d20d6061eb 100644 --- a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php +++ b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php @@ -702,7 +702,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders } } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show payments table @@ -718,7 +718,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders // phpcs:enable } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show miscellaneous information (payment mode, payment term, ...) @@ -784,6 +784,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders return $posy; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show total to pay @@ -999,6 +1000,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -1104,6 +1106,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1348,6 +1351,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders return $top_shift; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php b/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php index 7bee236b8b7..2fe56602504 100644 --- a/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php @@ -517,7 +517,8 @@ class pdf_standard extends ModelePDFSuppliersPayments } } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show total to pay * @@ -576,7 +577,7 @@ class pdf_standard extends ModelePDFSuppliersPayments $pdf->MultiCell(150, 4, date("d").' '.$outputlangs->transnoentitiesnoconv(date("F")).' '.date("Y"), 0, 'L', 1); } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -621,7 +622,7 @@ class pdf_standard extends ModelePDFSuppliersPayments //$this->printRect($pdf,$this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $tab_height, $hidetop, $hidebottom); // Rect prend une longueur en 3eme param et 4eme param } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -801,6 +802,7 @@ class pdf_standard extends ModelePDFSuppliersPayments } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * diff --git a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php index 4871e44713b..8b95819e8c1 100644 --- a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php +++ b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php @@ -700,6 +700,7 @@ class pdf_aurore extends ModelePDFSupplierProposal } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show payments table @@ -715,7 +716,7 @@ class pdf_aurore extends ModelePDFSupplierProposal // phpcs:enable } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show miscellaneous information (payment mode, payment term, ...) @@ -883,7 +884,7 @@ class pdf_aurore extends ModelePDFSupplierProposal return $posy; } - + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps /** * Show total to pay @@ -1157,6 +1158,7 @@ class pdf_aurore extends ModelePDFSupplierProposal return ($tab2_top + ($tab2_hl * $index)); } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show table for lines * @@ -1262,6 +1264,7 @@ class pdf_aurore extends ModelePDFSupplierProposal } } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show top header of page. * @@ -1479,6 +1482,7 @@ class pdf_aurore extends ModelePDFSupplierProposal return $top_shift; } + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore /** * Show footer of page. Need this->emetteur object * From 446f0590dc328b69a13ec3e588e92b083f0df49d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 13:45:04 +0200 Subject: [PATCH 103/228] FIX VAT number for Monaco (it uses FR) --- htdocs/core/lib/functions2.lib.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/core/lib/functions2.lib.php b/htdocs/core/lib/functions2.lib.php index 2f01cf441db..b4c8f6bf011 100644 --- a/htdocs/core/lib/functions2.lib.php +++ b/htdocs/core/lib/functions2.lib.php @@ -576,6 +576,7 @@ function isValidVATID($company) { $vatprefix = $company->country_code; if ($vatprefix == 'GR') $vatprefix = '(EL|GR)'; + elseif ($vatprefix == 'MC') $vatprefix = 'FR'; // Monaco is using french VAT numbers else $vatprefix = preg_quote($vatprefix, '/'); if (! preg_match('/^'.$vatprefix.'[a-zA-Z0-9\-\.]{5,14}$/i', str_replace(' ', '', $company->tva_intra))) { From a4892071227156be6a0c8729c91b46eb6474aca2 Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Mon, 12 Aug 2019 13:56:12 +0200 Subject: [PATCH 104/228] Fix force recalculate price with multicurrency --- htdocs/core/class/commonobject.class.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index e6d47c53d5f..69b43dbe514 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -1936,10 +1936,16 @@ abstract class CommonObject { foreach ($this->lines as &$line) { + // Amounts in company currency will be recalculated if($mode == 1) { $line->subprice = 0; } + // Amounts in foreign currency will be recalculated + if($mode == 2) { + $line->multicurrency_subprice = 0; + } + switch ($this->element) { case 'propal': $this->updateline( From acdf13d769f06eaab2a5d13df79aceb226c1e6ad Mon Sep 17 00:00:00 2001 From: atm-greg Date: Mon, 12 Aug 2019 15:08:15 +0200 Subject: [PATCH 105/228] add fk_projet on stock movements --- .../install/mysql/migration/7.0.0-8.0.0.sql | 2 ++ .../mysql/tables/llx_stock_mouvement.sql | 3 ++- .../stock/class/mouvementstock.class.php | 22 ++++++++++++++++--- htdocs/product/stock/mouvement.php | 17 ++++++++++++++ 4 files changed, 40 insertions(+), 4 deletions(-) diff --git a/htdocs/install/mysql/migration/7.0.0-8.0.0.sql b/htdocs/install/mysql/migration/7.0.0-8.0.0.sql index 380c64c28fc..7a6f837fd7f 100644 --- a/htdocs/install/mysql/migration/7.0.0-8.0.0.sql +++ b/htdocs/install/mysql/migration/7.0.0-8.0.0.sql @@ -562,3 +562,5 @@ ALTER TABLE llx_advtargetemailing DROP COLUMN fk_mailing; DROP TABLE llx_ticket_logs; ALTER TABLE llx_actioncomm MODIFY COLUMN code varchar(50); + +ALTER TABLE llx_stock_mouvement ADD COLUMN fk_projet INTEGER NOT NULL DEFAULT 0 AFTER model_pdf; diff --git a/htdocs/install/mysql/tables/llx_stock_mouvement.sql b/htdocs/install/mysql/tables/llx_stock_mouvement.sql index 1e78e7a9820..88d7aed98a7 100644 --- a/htdocs/install/mysql/tables/llx_stock_mouvement.sql +++ b/htdocs/install/mysql/tables/llx_stock_mouvement.sql @@ -35,5 +35,6 @@ create table llx_stock_mouvement inventorycode varchar(128), -- Code used to group different movement line into one operation (may be an inventory, a mass picking) fk_origin integer, origintype varchar(32), - model_pdf varchar(255) + model_pdf varchar(255), + fk_projet integer NOT NULL DEFAULT 0 )ENGINE=innodb; diff --git a/htdocs/product/stock/class/mouvementstock.class.php b/htdocs/product/stock/class/mouvementstock.class.php index 825034b87cb..268b2127d68 100644 --- a/htdocs/product/stock/class/mouvementstock.class.php +++ b/htdocs/product/stock/class/mouvementstock.class.php @@ -322,17 +322,31 @@ class MouvementStock extends CommonObject if ($movestock && $entrepot_id > 0) // Change stock for current product, change for subproduct is done after { + $fk_project = 0; if(!empty($this->origin)) { // This is set by caller for tracking reason $origintype = $this->origin->element; $fk_origin = $this->origin->id; + if($origintype == 'project') $fk_project = $fk_origin; + else + { + $res = $this->origin->fetch($fk_origin); + if ($res > 0) + { + if (!empty($this->origin->fk_project)) + { + $fk_project = $this->origin->fk_project; + } + } + } } else { $origintype = ''; $fk_origin = 0; + $fk_project = 0; } $sql = "INSERT INTO ".MAIN_DB_PREFIX."stock_mouvement("; $sql.= " datem, fk_product, batch, eatby, sellby,"; - $sql.= " fk_entrepot, value, type_mouvement, fk_user_author, label, inventorycode, price, fk_origin, origintype"; + $sql.= " fk_entrepot, value, type_mouvement, fk_user_author, label, inventorycode, price, fk_origin, origintype, fk_projet"; $sql.= ")"; $sql.= " VALUES ('".$this->db->idate($now)."', ".$this->product_id.", "; $sql.= " ".($batch?"'".$batch."'":"null").", "; @@ -344,7 +358,8 @@ class MouvementStock extends CommonObject $sql.= " ".($inventorycode?"'".$this->db->escape($inventorycode)."'":"null").","; $sql.= " '".price2num($price)."',"; $sql.= " '".$fk_origin."',"; - $sql.= " '".$origintype."'"; + $sql.= " '".$origintype."',"; + $sql.= " ". $fk_project; $sql.= ")"; dol_syslog(get_class($this)."::_create insert record into stock_mouvement", LOG_DEBUG); @@ -548,7 +563,8 @@ class MouvementStock extends CommonObject $sql .= " t.inventorycode,"; $sql .= " t.batch,"; $sql .= " t.eatby,"; - $sql .= " t.sellby"; + $sql .= " t.sellby,"; + $sql .= " t.fk_projet"; $sql .= ' FROM ' . MAIN_DB_PREFIX . $this->table_element . ' as t'; $sql.= ' WHERE 1 = 1'; //if (null !== $ref) { diff --git a/htdocs/product/stock/mouvement.php b/htdocs/product/stock/mouvement.php index 331d39efccb..ca09469ca2d 100644 --- a/htdocs/product/stock/mouvement.php +++ b/htdocs/product/stock/mouvement.php @@ -109,6 +109,7 @@ $arrayfields=array( 'origin'=>array('label'=>$langs->trans("Origin"), 'checked'=>1), 'm.value'=>array('label'=>$langs->trans("Qty"), 'checked'=>1), 'm.price'=>array('label'=>$langs->trans("UnitPurchaseValue"), 'checked'=>0), + 'm.fk_projet'=>array('label'=>$langs->trans('Project'), 'checked'=>0) //'m.datec'=>array('label'=>$langs->trans("DateCreation"), 'checked'=>0, 'position'=>500), //'m.tms'=>array('label'=>$langs->trans("DateModificationShort"), 'checked'=>0, 'position'=>500) ); @@ -442,6 +443,7 @@ $sql.= " e.ref as stock, e.rowid as entrepot_id, e.lieu,"; $sql.= " m.rowid as mid, m.value as qty, m.datem, m.fk_user_author, m.label, m.inventorycode, m.fk_origin, m.origintype,"; $sql.= " m.batch, m.price,"; $sql.= " m.type_mouvement,"; +$sql.= " m.fk_projet,"; $sql.= " pl.rowid as lotid, pl.eatby, pl.sellby,"; $sql.= " u.login, u.photo, u.lastname, u.firstname"; // Add fields from extrafields @@ -874,6 +876,13 @@ if ($resql) print '  '; print ''; } + if (! empty($arrayfields['m.fk_projet']['checked'])) + { + // Price + print ''; + print '  '; + print ''; + } // Extra fields @@ -918,6 +927,7 @@ if ($resql) if (! empty($arrayfields['origin']['checked'])) print_liste_field_titre($arrayfields['origin']['label'],$_SERVER["PHP_SELF"], "","",$param,"",$sortfield,$sortorder); if (! empty($arrayfields['m.value']['checked'])) print_liste_field_titre($arrayfields['m.value']['label'],$_SERVER["PHP_SELF"], "m.value","",$param,'align="right"',$sortfield,$sortorder); if (! empty($arrayfields['m.price']['checked'])) print_liste_field_titre($arrayfields['m.price']['label'],$_SERVER["PHP_SELF"], "m.price","",$param,'align="right"',$sortfield,$sortorder); + if (! empty($arrayfields['m.fk_projet']['checked'])) print_liste_field_titre($arrayfields['m.fk_projet']['label'],$_SERVER["PHP_SELF"], "m.fk_projet","",$param,'align="right"',$sortfield,$sortorder); // Extra fields include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_title.tpl.php'; @@ -1060,6 +1070,13 @@ if ($resql) if ($objp->price != 0) print price($objp->price); print ''; } + if (! empty($arrayfields['m.fk_projet']['checked'])) + { + // fk_projet + print ''; + if ($objp->fk_projet != 0) print $movement->get_origin($objp->fk_projet, 'project'); + print ''; + } // Action column print ''; if ($massactionbutton || $massaction) // If we are in select mode (massactionbutton defined) or if we have already selected and sent an action ($massaction) defined From 7c136e77ece52644d8029873601e3ea27956cd69 Mon Sep 17 00:00:00 2001 From: atm-greg Date: Mon, 12 Aug 2019 15:18:40 +0200 Subject: [PATCH 106/228] bad migration file --- htdocs/install/mysql/migration/10.0.0-11.0.0.sql | 2 ++ htdocs/install/mysql/migration/7.0.0-8.0.0.sql | 2 -- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/install/mysql/migration/10.0.0-11.0.0.sql b/htdocs/install/mysql/migration/10.0.0-11.0.0.sql index 63a71d59f44..4f70af3b566 100644 --- a/htdocs/install/mysql/migration/10.0.0-11.0.0.sql +++ b/htdocs/install/mysql/migration/10.0.0-11.0.0.sql @@ -74,3 +74,5 @@ ALTER TABLE llx_payment_salary_extrafields ADD INDEX idx_payment_salary_extrafie ALTER TABLE llx_c_price_expression MODIFY COLUMN expression varchar(255) NOT NULL; UPDATE llx_bank_url set url = REPLACE( url, 'compta/salaries/', 'salaries/'); + +ALTER TABLE llx_stock_mouvement ADD COLUMN fk_projet INTEGER NOT NULL DEFAULT 0 AFTER model_pdf; diff --git a/htdocs/install/mysql/migration/7.0.0-8.0.0.sql b/htdocs/install/mysql/migration/7.0.0-8.0.0.sql index 7a6f837fd7f..380c64c28fc 100644 --- a/htdocs/install/mysql/migration/7.0.0-8.0.0.sql +++ b/htdocs/install/mysql/migration/7.0.0-8.0.0.sql @@ -562,5 +562,3 @@ ALTER TABLE llx_advtargetemailing DROP COLUMN fk_mailing; DROP TABLE llx_ticket_logs; ALTER TABLE llx_actioncomm MODIFY COLUMN code varchar(50); - -ALTER TABLE llx_stock_mouvement ADD COLUMN fk_projet INTEGER NOT NULL DEFAULT 0 AFTER model_pdf; From 4d38e5cdb5b7c4ec5866ca0ff02ce5a5f4b003f2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 17:12:17 +0200 Subject: [PATCH 107/228] Fix removed duplicate load --- htdocs/core/website.inc.php | 3 --- 1 file changed, 3 deletions(-) diff --git a/htdocs/core/website.inc.php b/htdocs/core/website.inc.php index 138f96fc7f3..4114fff00b7 100644 --- a/htdocs/core/website.inc.php +++ b/htdocs/core/website.inc.php @@ -93,6 +93,3 @@ if ($_SERVER['PHP_SELF'] != DOL_URL_ROOT.'/website/index.php') // If we browsing } } } - -// Load websitepage class -include_once DOL_DOCUMENT_ROOT.'/website/class/websitepage.class.php'; From 5346135a0cf430335825e4a3e00a158ae5927d58 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 17:12:17 +0200 Subject: [PATCH 108/228] Fix removed duplicate load --- htdocs/core/website.inc.php | 3 --- 1 file changed, 3 deletions(-) diff --git a/htdocs/core/website.inc.php b/htdocs/core/website.inc.php index 138f96fc7f3..4114fff00b7 100644 --- a/htdocs/core/website.inc.php +++ b/htdocs/core/website.inc.php @@ -93,6 +93,3 @@ if ($_SERVER['PHP_SELF'] != DOL_URL_ROOT.'/website/index.php') // If we browsing } } } - -// Load websitepage class -include_once DOL_DOCUMENT_ROOT.'/website/class/websitepage.class.php'; From 18e4d1b3346ef0b0b490bbda4bfa33262c2cdd7b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 17:22:46 +0200 Subject: [PATCH 109/228] Fix to avoid to die page when there is a redirect. --- htdocs/core/lib/website.lib.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 00716f6a3ab..135a09cd803 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -342,9 +342,9 @@ function redirectToContainer($containerref, $containeraliasalt = '', $containeri if (defined('USEDOLIBARREDITOR')) { print '
'; - print "This page contains dynamic code that make a redirect to '".$containerref."' in your current context. There is no preview for this page."; + print "This page contains dynamic code that make a redirect to '".$containerref."' in your current context. Redirect has been canceled as it is not supported in edition mode."; print '
'; - exit; + return; } if (defined('USEDOLIBARRSERVER')) // When page called from Dolibarr server From 7dab396d08e3958447b8bb63474c364d78db6efc Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Mon, 12 Aug 2019 17:29:25 +0200 Subject: [PATCH 110/228] Fix: error creating a budget from an intervention --- htdocs/comm/propal/class/propal.class.php | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 7a24fad83af..1bf1e5a6a69 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -6,7 +6,7 @@ * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2008 Raphael Bertrand - * Copyright (C) 2010-2014 Juanjo Menent + * Copyright (C) 2010-2019 Juanjo Menent * Copyright (C) 2010-2017 Philippe Grand * Copyright (C) 2012-2014 Christophe Battarel * Copyright (C) 2012 Cedric Salvador @@ -1056,14 +1056,6 @@ class Propal extends CommonObject } } - // Add linked object (deprecated, use ->linkedObjectsIds instead) - if (! $error && $this->origin && $this->origin_id) - { - dol_syslog('Deprecated use of linked object, use ->linkedObjectsIds instead', LOG_WARNING); - $ret = $this->add_object_linked(); - if (! $ret) dol_print_error($this->db); - } - /* * Insertion du detail des produits dans la base * Insert products detail in database From 19bb5aa006657efb7a1da4e58f95d8c624115cb2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 17:34:18 +0200 Subject: [PATCH 111/228] NEW Can edit a manifest.json.php file for web app --- htdocs/website/class/website.class.php | 4 +- htdocs/website/index.php | 156 ++++++++++++++++++++----- 2 files changed, 127 insertions(+), 33 deletions(-) diff --git a/htdocs/website/class/website.class.php b/htdocs/website/class/website.class.php index 64e23642b60..fffa25cf728 100644 --- a/htdocs/website/class/website.class.php +++ b/htdocs/website/class/website.class.php @@ -412,8 +412,8 @@ class Website extends CommonObject $sql .= ' fk_default_home = '.(($this->fk_default_home > 0)?$this->fk_default_home:"null").','; $sql .= ' virtualhost = '.(($this->virtualhost != '')?"'".$this->db->escape($this->virtualhost)."'":"null").','; $sql .= ' fk_user_modif = '.(! isset($this->fk_user_modif) ? $user->id : $this->fk_user_modif).','; - $sql .= ' date_creation = '.(! isset($this->date_creation) || dol_strlen($this->date_creation) != 0 ? "'".$this->db->idate($this->date_creation)."'" : 'null'); - $sql .= ', tms = '.(dol_strlen($this->date_modification) != 0 ? "'".$this->db->idate($this->date_modification)."'" : "'".$this->db->idate(dol_now())."'"); + $sql .= ' date_creation = '.(! isset($this->date_creation) || dol_strlen($this->date_creation) != 0 ? "'".$this->db->idate($this->date_creation)."'" : 'null').','; + $sql .= ' tms = '.(dol_strlen($this->date_modification) != 0 ? "'".$this->db->idate($this->date_modification)."'" : "'".$this->db->idate(dol_now())."'"); $sql .= ' WHERE rowid=' . $this->id; $this->db->begin(); diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 76d063393f8..5083f492266 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -181,6 +181,7 @@ $filehtaccess=$pathofwebsite.'/.htaccess'; $filetpl=$pathofwebsite.'/page'.$pageid.'.tpl.php'; $fileindex=$pathofwebsite.'/index.php'; $filewrapper=$pathofwebsite.'/wrapper.php'; +$filemanifestjson=$pathofwebsite.'/manifest.json.php'; // Define $urlwithroot $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root)); @@ -207,6 +208,47 @@ $htmlheadercontentdefault.=''."\n"; $htmlheadercontentdefault.='-->'."\n"; +$manifestjsoncontentdefault = ''; +$manifestjsoncontentdefault.= '{ + "name": "MyWebsite", + "short_name": "MyWebsite", + "start_url": "/", + "lang": "en-US", + "display": "standalone", + "background_color": "#fff", + "description": "A simple Web app.", + "icons": [{ + "src": "images/'.$website->ref.'/homescreen48.png", + "sizes": "48x48", + "type": "image/png" + }, { + "src": "image/'.$website->ref.'/homescreen72.png", + "sizes": "72x72", + "type": "image/png" + }, { + "src": "image/'.$website->ref.'/homescreen96.png", + "sizes": "96x96", + "type": "image/png" + }, { + "src": "image/'.$website->ref.'/homescreen144.png", + "sizes": "144x144", + "type": "image/png" + }, { + "src": "image/'.$website->ref.'/homescreen168.png", + "sizes": "168x168", + "type": "image/png" + }, { + "src": "image/'.$website->ref.'/homescreen192.png", + "sizes": "192x192", + "type": "image/png" + }], + "related_applications": [{ + "platform": "play", + "url": "https://play.google.com/store/apps/details?id=com.nltechno.dolidroidpro" + }] +}'; + + /* * Actions @@ -794,6 +836,13 @@ if ($action == 'addcontainer') $result=dolSaveHtaccessFile($filehtaccess, $htaccesscontent); } + if (! dol_is_file($filemanifestjson)) + { + $manifestjsoncontent = ""; + $result=dolSaveManifestJson($filemanifestjson, $manifestjsoncontent); + } + + $action = 'preview'; } } @@ -940,7 +989,7 @@ if ($action == 'updatecss') /* We disable php code since htmlheader is never executed as an include but only read by fgets_content. $htmlheadercontent.= "\n";*/ - $htaccesscontent.= GETPOST('WEBSITE_HTACCESS', 'none'); - /*$htaccesscontent.= "\n".'"."\n";*/ - dol_syslog("Save file htaccess into ".$filehtaccess); dol_mkdir($pathofwebsite); @@ -1089,6 +1123,38 @@ if ($action == 'updatecss') setEventMessages('Failed to write file '.$filehtaccess, null, 'errors'); } + // manifest.json file + $manifestjsoncontent =''; + + $manifestjsoncontent.= "\n"; + + $manifestjsoncontent.= GETPOST('WEBSITE_MANIFEST_JSON', 'none'); + + $manifestjsoncontent.= "\n".'"."\n"; + + dol_syslog("Save file manifest.json.php into ".$manifestjsoncontent); + + dol_mkdir($pathofwebsite); + $result = file_put_contents($filemanifestjson, $manifestjsoncontent); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($filemanifestjson, octdec($conf->global->MAIN_UMASK)); + + if ($result === false) + { + $error++; + setEventMessages('Failed to write file '.$filemanifestjson, null, 'errors'); + } + // Message if no error if (! $error) @@ -2382,7 +2448,22 @@ if ($action == 'editcss') $htaccesscontent.="# Order allow,deny\n"; $htaccesscontent.="# Deny from all\n"; } - //else $htaccesscontent=''."\n".$htaccesscontent."\n".'';*/ + + + if (GETPOST('editcss', 'alpha') || GETPOST('refreshpage', 'alpha')) + { + $manifestjsoncontent = @file_get_contents($filemanifestjson); + // Clean the manifestjson file to remove php code and get only html part + $manifestjsoncontent = preg_replace('/<\?php \/\/ BEGIN PHP[^\?]*END PHP \?>\n*/ims', '', $manifestjsoncontent); + } + else + { + $manifestjsoncontent = GETPOST('WEBSITE_MANIFEST_JSON'); + } + if (! trim($manifestjsoncontent)) + { + //$manifestjsoncontent.=""; + } dol_fiche_head(); @@ -2396,6 +2477,20 @@ if ($action == 'editcss') print $websitekey; print ''; + // VirtualHost + print ''; + + $htmltext = $langs->trans("SetHereVirtualHost", DOL_DATA_ROOT.'/website/'.$websitekey.''); + $htmltext.='
'; + $htmltext.='
'.$langs->trans("CheckVirtualHostPerms", $langs->transnoentitiesnoconv("ReadPerm"), DOL_DOCUMENT_ROOT); + $htmltext.='
'.$langs->trans("CheckVirtualHostPerms", $langs->transnoentitiesnoconv("WritePerm"), DOL_DATA_ROOT.'/website
'.DOL_DATA_ROOT.'/medias'); + + print $form->textwithpicto($langs->trans('Virtualhost'), $htmltext, 1, 'help', '', 0, 2, 'virtualhosttooltip'); + print ''; + print ''; + print ''; + print ''; + // CSS file print ''; print $langs->trans('WEBSITE_CSS_INLINE'); @@ -2448,18 +2543,17 @@ if ($action == 'editcss') print ''; - // VirtualHost + // Manifest.json print ''; - - $htmltext = $langs->trans("SetHereVirtualHost", DOL_DATA_ROOT.'/website/'.$websitekey.''); - $htmltext.='
'; - $htmltext.='
'.$langs->trans("CheckVirtualHostPerms", $langs->transnoentitiesnoconv("ReadPerm"), DOL_DOCUMENT_ROOT); - $htmltext.='
'.$langs->trans("CheckVirtualHostPerms", $langs->transnoentitiesnoconv("WritePerm"), DOL_DATA_ROOT.'/website
'.DOL_DATA_ROOT.'/medias'); - - print $form->textwithpicto($langs->trans('Virtualhost'), $htmltext, 1, 'help', '', 0, 2, 'virtualhosttooltip'); + $htmlhelp=$langs->trans("Example").' :
'; + $htmlhelp.=dol_htmlentitiesbr($manifestjsoncontentdefault); + print $form->textwithpicto($langs->trans('WEBSITE_MANIFEST_JSON'), $htmlhelp, 1, 'help', '', 0, 2, 'manifestjsontooltip'); print ''; - print ''; - print ''; + + $doleditor=new DolEditor('WEBSITE_MANIFEST_JSON', $manifestjsoncontent, '', '220', 'ace', 'In', true, false, 'ace', 0, '100%', ''); + print $doleditor->Create(1, '', true, $langs->trans("File").' manifest.json', 'text'); + + print ''; print ''; From b3e9cf3be742ee4985d61a6c331b7542c9466455 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 17:37:23 +0200 Subject: [PATCH 112/228] Sync transifex --- htdocs/langs/ar_SA/accountancy.lang | 5 +- htdocs/langs/ar_SA/admin.lang | 27 +- htdocs/langs/ar_SA/bills.lang | 15 + htdocs/langs/ar_SA/errors.lang | 3 +- htdocs/langs/ar_SA/main.lang | 2 + htdocs/langs/ar_SA/products.lang | 1 + htdocs/langs/ar_SA/stripe.lang | 2 + htdocs/langs/ar_SA/withdrawals.lang | 3 +- htdocs/langs/bg_BG/accountancy.lang | 601 +++++++++++----------- htdocs/langs/bg_BG/admin.lang | 65 ++- htdocs/langs/bg_BG/agenda.lang | 14 +- htdocs/langs/bg_BG/assets.lang | 10 +- htdocs/langs/bg_BG/bills.lang | 127 +++-- htdocs/langs/bg_BG/blockedlog.lang | 2 +- htdocs/langs/bg_BG/boxes.lang | 50 +- htdocs/langs/bg_BG/cashdesk.lang | 4 +- htdocs/langs/bg_BG/companies.lang | 242 ++++----- htdocs/langs/bg_BG/contracts.lang | 2 +- htdocs/langs/bg_BG/donations.lang | 32 +- htdocs/langs/bg_BG/errors.lang | 9 +- htdocs/langs/bg_BG/exports.lang | 140 ++--- htdocs/langs/bg_BG/holiday.lang | 4 +- htdocs/langs/bg_BG/install.lang | 320 ++++++------ htdocs/langs/bg_BG/loan.lang | 50 +- htdocs/langs/bg_BG/mails.lang | 4 +- htdocs/langs/bg_BG/main.lang | 8 +- htdocs/langs/bg_BG/members.lang | 6 +- htdocs/langs/bg_BG/oauth.lang | 58 +-- htdocs/langs/bg_BG/opensurvey.lang | 68 +-- htdocs/langs/bg_BG/orders.lang | 32 +- htdocs/langs/bg_BG/other.lang | 132 ++--- htdocs/langs/bg_BG/products.lang | 121 ++--- htdocs/langs/bg_BG/projects.lang | 106 ++-- htdocs/langs/bg_BG/propal.lang | 28 +- htdocs/langs/bg_BG/sendings.lang | 84 +-- htdocs/langs/bg_BG/stocks.lang | 84 +-- htdocs/langs/bg_BG/stripe.lang | 2 + htdocs/langs/bg_BG/supplier_proposal.lang | 2 +- htdocs/langs/bg_BG/ticket.lang | 110 ++-- htdocs/langs/bg_BG/users.lang | 34 +- htdocs/langs/bg_BG/withdrawals.lang | 3 +- htdocs/langs/bg_BG/workflow.lang | 4 +- htdocs/langs/bn_BD/accountancy.lang | 5 +- htdocs/langs/bn_BD/admin.lang | 27 +- htdocs/langs/bn_BD/bills.lang | 15 + htdocs/langs/bn_BD/errors.lang | 3 +- htdocs/langs/bn_BD/main.lang | 2 + htdocs/langs/bn_BD/products.lang | 1 + htdocs/langs/bn_BD/stripe.lang | 2 + htdocs/langs/bn_BD/withdrawals.lang | 3 +- htdocs/langs/bs_BA/accountancy.lang | 5 +- htdocs/langs/bs_BA/admin.lang | 27 +- htdocs/langs/bs_BA/bills.lang | 15 + htdocs/langs/bs_BA/errors.lang | 3 +- htdocs/langs/bs_BA/main.lang | 2 + htdocs/langs/bs_BA/products.lang | 1 + htdocs/langs/bs_BA/stripe.lang | 2 + htdocs/langs/bs_BA/withdrawals.lang | 3 +- htdocs/langs/ca_ES/accountancy.lang | 5 +- htdocs/langs/ca_ES/admin.lang | 27 +- htdocs/langs/ca_ES/bills.lang | 15 + htdocs/langs/ca_ES/errors.lang | 3 +- htdocs/langs/ca_ES/main.lang | 2 + htdocs/langs/ca_ES/products.lang | 1 + htdocs/langs/ca_ES/stripe.lang | 2 + htdocs/langs/ca_ES/withdrawals.lang | 3 +- htdocs/langs/cs_CZ/accountancy.lang | 5 +- htdocs/langs/cs_CZ/admin.lang | 27 +- htdocs/langs/cs_CZ/bills.lang | 15 + htdocs/langs/cs_CZ/errors.lang | 3 +- htdocs/langs/cs_CZ/main.lang | 2 + htdocs/langs/cs_CZ/products.lang | 1 + htdocs/langs/cs_CZ/stripe.lang | 2 + htdocs/langs/cs_CZ/withdrawals.lang | 3 +- htdocs/langs/da_DK/accountancy.lang | 5 +- htdocs/langs/da_DK/admin.lang | 27 +- htdocs/langs/da_DK/bills.lang | 15 + htdocs/langs/da_DK/errors.lang | 3 +- htdocs/langs/da_DK/main.lang | 2 + htdocs/langs/da_DK/products.lang | 1 + htdocs/langs/da_DK/stripe.lang | 2 + htdocs/langs/da_DK/withdrawals.lang | 3 +- htdocs/langs/de_AT/admin.lang | 1 - htdocs/langs/de_AT/withdrawals.lang | 1 - htdocs/langs/de_CH/accountancy.lang | 11 +- htdocs/langs/de_CH/admin.lang | 5 +- htdocs/langs/de_CH/bills.lang | 4 +- htdocs/langs/de_CH/companies.lang | 10 +- htdocs/langs/de_CH/compta.lang | 2 +- htdocs/langs/de_CH/errors.lang | 1 - htdocs/langs/de_CH/main.lang | 3 +- htdocs/langs/de_CH/members.lang | 3 + htdocs/langs/de_CH/supplier_proposal.lang | 18 +- htdocs/langs/de_CH/ticket.lang | 1 + htdocs/langs/de_CH/users.lang | 4 +- htdocs/langs/de_CH/withdrawals.lang | 1 - htdocs/langs/de_DE/accountancy.lang | 5 +- htdocs/langs/de_DE/admin.lang | 37 +- htdocs/langs/de_DE/bills.lang | 15 + htdocs/langs/de_DE/boxes.lang | 8 +- htdocs/langs/de_DE/errors.lang | 3 +- htdocs/langs/de_DE/main.lang | 12 +- htdocs/langs/de_DE/products.lang | 1 + htdocs/langs/de_DE/stripe.lang | 2 + htdocs/langs/de_DE/withdrawals.lang | 3 +- htdocs/langs/el_GR/accountancy.lang | 5 +- htdocs/langs/el_GR/admin.lang | 27 +- htdocs/langs/el_GR/bills.lang | 15 + htdocs/langs/el_GR/errors.lang | 3 +- htdocs/langs/el_GR/main.lang | 2 + htdocs/langs/el_GR/products.lang | 1 + htdocs/langs/el_GR/stripe.lang | 2 + htdocs/langs/el_GR/withdrawals.lang | 3 +- htdocs/langs/en_AU/admin.lang | 6 +- htdocs/langs/en_AU/withdrawals.lang | 2 +- htdocs/langs/en_CA/admin.lang | 6 +- htdocs/langs/en_GB/accountancy.lang | 1 - htdocs/langs/en_GB/admin.lang | 6 +- htdocs/langs/en_GB/withdrawals.lang | 4 +- htdocs/langs/en_IN/admin.lang | 6 +- htdocs/langs/es_CL/admin.lang | 10 - htdocs/langs/es_CO/admin.lang | 6 - htdocs/langs/es_DO/admin.lang | 2 - htdocs/langs/es_EC/admin.lang | 6 - htdocs/langs/es_ES/accountancy.lang | 5 +- htdocs/langs/es_ES/admin.lang | 27 +- htdocs/langs/es_ES/bills.lang | 15 + htdocs/langs/es_ES/errors.lang | 3 +- htdocs/langs/es_ES/main.lang | 2 + htdocs/langs/es_ES/products.lang | 1 + htdocs/langs/es_ES/stripe.lang | 2 + htdocs/langs/es_ES/withdrawals.lang | 3 +- htdocs/langs/es_MX/accountancy.lang | 1 - htdocs/langs/es_MX/admin.lang | 47 +- htdocs/langs/es_PA/admin.lang | 2 - htdocs/langs/es_PE/accountancy.lang | 1 - htdocs/langs/es_PE/admin.lang | 2 - htdocs/langs/es_VE/admin.lang | 2 - htdocs/langs/et_EE/accountancy.lang | 5 +- htdocs/langs/et_EE/admin.lang | 27 +- htdocs/langs/et_EE/bills.lang | 15 + htdocs/langs/et_EE/errors.lang | 3 +- htdocs/langs/et_EE/main.lang | 2 + htdocs/langs/et_EE/products.lang | 1 + htdocs/langs/et_EE/stripe.lang | 2 + htdocs/langs/et_EE/withdrawals.lang | 3 +- htdocs/langs/eu_ES/accountancy.lang | 5 +- htdocs/langs/eu_ES/admin.lang | 27 +- htdocs/langs/eu_ES/bills.lang | 15 + htdocs/langs/eu_ES/errors.lang | 3 +- htdocs/langs/eu_ES/main.lang | 2 + htdocs/langs/eu_ES/products.lang | 1 + htdocs/langs/eu_ES/stripe.lang | 2 + htdocs/langs/eu_ES/withdrawals.lang | 3 +- htdocs/langs/fa_IR/accountancy.lang | 5 +- htdocs/langs/fa_IR/admin.lang | 27 +- htdocs/langs/fa_IR/bills.lang | 15 + htdocs/langs/fa_IR/errors.lang | 3 +- htdocs/langs/fa_IR/main.lang | 2 + htdocs/langs/fa_IR/products.lang | 1 + htdocs/langs/fa_IR/stripe.lang | 2 + htdocs/langs/fa_IR/withdrawals.lang | 3 +- htdocs/langs/fi_FI/accountancy.lang | 5 +- htdocs/langs/fi_FI/admin.lang | 27 +- htdocs/langs/fi_FI/bills.lang | 15 + htdocs/langs/fi_FI/errors.lang | 3 +- htdocs/langs/fi_FI/main.lang | 2 + htdocs/langs/fi_FI/products.lang | 1 + htdocs/langs/fi_FI/stripe.lang | 2 + htdocs/langs/fi_FI/withdrawals.lang | 3 +- htdocs/langs/fr_BE/accountancy.lang | 1 - htdocs/langs/fr_BE/admin.lang | 6 +- htdocs/langs/fr_BE/withdrawals.lang | 1 + htdocs/langs/fr_CA/accountancy.lang | 1 - htdocs/langs/fr_CA/admin.lang | 7 +- htdocs/langs/fr_CA/errors.lang | 1 - htdocs/langs/fr_CA/withdrawals.lang | 10 +- htdocs/langs/fr_FR/accountancy.lang | 7 +- htdocs/langs/fr_FR/admin.lang | 27 +- htdocs/langs/fr_FR/agenda.lang | 6 +- htdocs/langs/fr_FR/bills.lang | 16 +- htdocs/langs/fr_FR/errors.lang | 3 +- htdocs/langs/fr_FR/main.lang | 2 + htdocs/langs/fr_FR/members.lang | 8 +- htdocs/langs/fr_FR/products.lang | 1 + htdocs/langs/fr_FR/stripe.lang | 2 + htdocs/langs/fr_FR/website.lang | 4 +- htdocs/langs/fr_FR/withdrawals.lang | 3 +- htdocs/langs/he_IL/accountancy.lang | 5 +- htdocs/langs/he_IL/admin.lang | 27 +- htdocs/langs/he_IL/bills.lang | 15 + htdocs/langs/he_IL/errors.lang | 3 +- htdocs/langs/he_IL/main.lang | 2 + htdocs/langs/he_IL/products.lang | 1 + htdocs/langs/he_IL/stripe.lang | 2 + htdocs/langs/he_IL/withdrawals.lang | 3 +- htdocs/langs/hr_HR/accountancy.lang | 5 +- htdocs/langs/hr_HR/admin.lang | 129 ++--- htdocs/langs/hr_HR/agenda.lang | 4 +- htdocs/langs/hr_HR/banks.lang | 6 +- htdocs/langs/hr_HR/bills.lang | 61 ++- htdocs/langs/hr_HR/bookmarks.lang | 18 +- htdocs/langs/hr_HR/boxes.lang | 2 +- htdocs/langs/hr_HR/categories.lang | 6 +- htdocs/langs/hr_HR/commercial.lang | 16 +- htdocs/langs/hr_HR/companies.lang | 54 +- htdocs/langs/hr_HR/compta.lang | 10 +- htdocs/langs/hr_HR/cron.lang | 12 +- htdocs/langs/hr_HR/donations.lang | 6 +- htdocs/langs/hr_HR/errors.lang | 5 +- htdocs/langs/hr_HR/exports.lang | 100 ++-- htdocs/langs/hr_HR/help.lang | 6 +- htdocs/langs/hr_HR/holiday.lang | 2 +- htdocs/langs/hr_HR/install.lang | 2 +- htdocs/langs/hr_HR/interventions.lang | 4 +- htdocs/langs/hr_HR/main.lang | 28 +- htdocs/langs/hr_HR/margins.lang | 6 +- htdocs/langs/hr_HR/members.lang | 10 +- htdocs/langs/hr_HR/opensurvey.lang | 14 +- htdocs/langs/hr_HR/orders.lang | 12 +- htdocs/langs/hr_HR/printing.lang | 14 +- htdocs/langs/hr_HR/products.lang | 9 +- htdocs/langs/hr_HR/projects.lang | 4 +- htdocs/langs/hr_HR/propal.lang | 2 +- htdocs/langs/hr_HR/resource.lang | 6 +- htdocs/langs/hr_HR/sendings.lang | 32 +- htdocs/langs/hr_HR/stripe.lang | 2 + htdocs/langs/hr_HR/supplier_proposal.lang | 6 +- htdocs/langs/hr_HR/suppliers.lang | 20 +- htdocs/langs/hr_HR/ticket.lang | 4 +- htdocs/langs/hr_HR/trips.lang | 4 +- htdocs/langs/hr_HR/users.lang | 8 +- htdocs/langs/hr_HR/withdrawals.lang | 3 +- htdocs/langs/hu_HU/accountancy.lang | 5 +- htdocs/langs/hu_HU/admin.lang | 27 +- htdocs/langs/hu_HU/bills.lang | 15 + htdocs/langs/hu_HU/errors.lang | 3 +- htdocs/langs/hu_HU/main.lang | 2 + htdocs/langs/hu_HU/products.lang | 1 + htdocs/langs/hu_HU/stripe.lang | 2 + htdocs/langs/hu_HU/withdrawals.lang | 3 +- htdocs/langs/id_ID/accountancy.lang | 5 +- htdocs/langs/id_ID/admin.lang | 27 +- htdocs/langs/id_ID/bills.lang | 15 + htdocs/langs/id_ID/errors.lang | 3 +- htdocs/langs/id_ID/main.lang | 2 + htdocs/langs/id_ID/products.lang | 1 + htdocs/langs/id_ID/stripe.lang | 2 + htdocs/langs/id_ID/withdrawals.lang | 3 +- htdocs/langs/is_IS/accountancy.lang | 5 +- htdocs/langs/is_IS/admin.lang | 27 +- htdocs/langs/is_IS/bills.lang | 15 + htdocs/langs/is_IS/errors.lang | 3 +- htdocs/langs/is_IS/main.lang | 2 + htdocs/langs/is_IS/products.lang | 1 + htdocs/langs/is_IS/stripe.lang | 2 + htdocs/langs/is_IS/withdrawals.lang | 3 +- htdocs/langs/it_IT/accountancy.lang | 5 +- htdocs/langs/it_IT/admin.lang | 51 +- htdocs/langs/it_IT/bills.lang | 25 +- htdocs/langs/it_IT/boxes.lang | 14 +- htdocs/langs/it_IT/companies.lang | 10 +- htdocs/langs/it_IT/errors.lang | 9 +- htdocs/langs/it_IT/main.lang | 10 +- htdocs/langs/it_IT/members.lang | 2 +- htdocs/langs/it_IT/orders.lang | 10 +- htdocs/langs/it_IT/other.lang | 8 +- htdocs/langs/it_IT/products.lang | 1 + htdocs/langs/it_IT/stripe.lang | 2 + htdocs/langs/it_IT/users.lang | 2 +- htdocs/langs/it_IT/withdrawals.lang | 5 +- htdocs/langs/ja_JP/accountancy.lang | 5 +- htdocs/langs/ja_JP/admin.lang | 27 +- htdocs/langs/ja_JP/bills.lang | 15 + htdocs/langs/ja_JP/errors.lang | 3 +- htdocs/langs/ja_JP/main.lang | 2 + htdocs/langs/ja_JP/products.lang | 1 + htdocs/langs/ja_JP/stripe.lang | 2 + htdocs/langs/ja_JP/withdrawals.lang | 3 +- htdocs/langs/ka_GE/accountancy.lang | 5 +- htdocs/langs/ka_GE/admin.lang | 27 +- htdocs/langs/ka_GE/bills.lang | 15 + htdocs/langs/ka_GE/errors.lang | 3 +- htdocs/langs/ka_GE/main.lang | 2 + htdocs/langs/ka_GE/products.lang | 1 + htdocs/langs/ka_GE/stripe.lang | 2 + htdocs/langs/ka_GE/withdrawals.lang | 3 +- htdocs/langs/km_KH/main.lang | 2 + htdocs/langs/kn_IN/accountancy.lang | 5 +- htdocs/langs/kn_IN/admin.lang | 27 +- htdocs/langs/kn_IN/bills.lang | 15 + htdocs/langs/kn_IN/errors.lang | 3 +- htdocs/langs/kn_IN/main.lang | 2 + htdocs/langs/kn_IN/products.lang | 1 + htdocs/langs/kn_IN/stripe.lang | 2 + htdocs/langs/kn_IN/withdrawals.lang | 3 +- htdocs/langs/ko_KR/accountancy.lang | 5 +- htdocs/langs/ko_KR/admin.lang | 27 +- htdocs/langs/ko_KR/bills.lang | 15 + htdocs/langs/ko_KR/errors.lang | 3 +- htdocs/langs/ko_KR/main.lang | 2 + htdocs/langs/ko_KR/products.lang | 1 + htdocs/langs/ko_KR/stripe.lang | 2 + htdocs/langs/ko_KR/withdrawals.lang | 3 +- htdocs/langs/lo_LA/accountancy.lang | 5 +- htdocs/langs/lo_LA/admin.lang | 27 +- htdocs/langs/lo_LA/bills.lang | 15 + htdocs/langs/lo_LA/errors.lang | 3 +- htdocs/langs/lo_LA/main.lang | 2 + htdocs/langs/lo_LA/products.lang | 1 + htdocs/langs/lo_LA/stripe.lang | 2 + htdocs/langs/lo_LA/withdrawals.lang | 3 +- htdocs/langs/lt_LT/accountancy.lang | 5 +- htdocs/langs/lt_LT/admin.lang | 27 +- htdocs/langs/lt_LT/bills.lang | 15 + htdocs/langs/lt_LT/errors.lang | 3 +- htdocs/langs/lt_LT/main.lang | 2 + htdocs/langs/lt_LT/products.lang | 1 + htdocs/langs/lt_LT/stripe.lang | 2 + htdocs/langs/lt_LT/withdrawals.lang | 3 +- htdocs/langs/lv_LV/accountancy.lang | 5 +- htdocs/langs/lv_LV/admin.lang | 35 +- htdocs/langs/lv_LV/banks.lang | 10 +- htdocs/langs/lv_LV/bills.lang | 47 +- htdocs/langs/lv_LV/companies.lang | 4 +- htdocs/langs/lv_LV/compta.lang | 22 +- htdocs/langs/lv_LV/dict.lang | 2 +- htdocs/langs/lv_LV/ecm.lang | 2 +- htdocs/langs/lv_LV/errors.lang | 7 +- htdocs/langs/lv_LV/exports.lang | 28 +- htdocs/langs/lv_LV/help.lang | 2 +- htdocs/langs/lv_LV/holiday.lang | 6 +- htdocs/langs/lv_LV/install.lang | 4 +- htdocs/langs/lv_LV/main.lang | 2 + htdocs/langs/lv_LV/products.lang | 1 + htdocs/langs/lv_LV/stripe.lang | 2 + htdocs/langs/lv_LV/withdrawals.lang | 3 +- htdocs/langs/mk_MK/accountancy.lang | 5 +- htdocs/langs/mk_MK/admin.lang | 27 +- htdocs/langs/mk_MK/bills.lang | 15 + htdocs/langs/mk_MK/errors.lang | 3 +- htdocs/langs/mk_MK/main.lang | 2 + htdocs/langs/mk_MK/products.lang | 1 + htdocs/langs/mk_MK/stripe.lang | 2 + htdocs/langs/mk_MK/withdrawals.lang | 3 +- htdocs/langs/mn_MN/accountancy.lang | 5 +- htdocs/langs/mn_MN/admin.lang | 27 +- htdocs/langs/mn_MN/bills.lang | 15 + htdocs/langs/mn_MN/errors.lang | 3 +- htdocs/langs/mn_MN/main.lang | 2 + htdocs/langs/mn_MN/products.lang | 1 + htdocs/langs/mn_MN/stripe.lang | 2 + htdocs/langs/mn_MN/withdrawals.lang | 3 +- htdocs/langs/nb_NO/accountancy.lang | 5 +- htdocs/langs/nb_NO/admin.lang | 27 +- htdocs/langs/nb_NO/bills.lang | 15 + htdocs/langs/nb_NO/errors.lang | 3 +- htdocs/langs/nb_NO/main.lang | 2 + htdocs/langs/nb_NO/products.lang | 1 + htdocs/langs/nb_NO/stripe.lang | 2 + htdocs/langs/nb_NO/withdrawals.lang | 3 +- htdocs/langs/nl_NL/accountancy.lang | 5 +- htdocs/langs/nl_NL/admin.lang | 27 +- htdocs/langs/nl_NL/bills.lang | 15 + htdocs/langs/nl_NL/errors.lang | 3 +- htdocs/langs/nl_NL/main.lang | 2 + htdocs/langs/nl_NL/products.lang | 1 + htdocs/langs/nl_NL/stripe.lang | 2 + htdocs/langs/nl_NL/withdrawals.lang | 3 +- htdocs/langs/pl_PL/accountancy.lang | 5 +- htdocs/langs/pl_PL/admin.lang | 27 +- htdocs/langs/pl_PL/bills.lang | 17 +- htdocs/langs/pl_PL/errors.lang | 3 +- htdocs/langs/pl_PL/main.lang | 2 + htdocs/langs/pl_PL/products.lang | 1 + htdocs/langs/pl_PL/stripe.lang | 2 + htdocs/langs/pl_PL/withdrawals.lang | 3 +- htdocs/langs/pt_BR/accountancy.lang | 4 +- htdocs/langs/pt_BR/admin.lang | 30 +- htdocs/langs/pt_BR/agenda.lang | 1 - htdocs/langs/pt_BR/banks.lang | 7 +- htdocs/langs/pt_BR/deliveries.lang | 5 +- htdocs/langs/pt_BR/errors.lang | 1 - htdocs/langs/pt_BR/paypal.lang | 1 + htdocs/langs/pt_BR/products.lang | 3 + htdocs/langs/pt_BR/website.lang | 4 + htdocs/langs/pt_BR/withdrawals.lang | 7 +- htdocs/langs/pt_PT/accountancy.lang | 5 +- htdocs/langs/pt_PT/admin.lang | 27 +- htdocs/langs/pt_PT/bills.lang | 15 + htdocs/langs/pt_PT/errors.lang | 3 +- htdocs/langs/pt_PT/main.lang | 2 + htdocs/langs/pt_PT/products.lang | 1 + htdocs/langs/pt_PT/stripe.lang | 2 + htdocs/langs/pt_PT/withdrawals.lang | 3 +- htdocs/langs/ro_RO/accountancy.lang | 5 +- htdocs/langs/ro_RO/admin.lang | 27 +- htdocs/langs/ro_RO/bills.lang | 15 + htdocs/langs/ro_RO/errors.lang | 3 +- htdocs/langs/ro_RO/main.lang | 2 + htdocs/langs/ro_RO/products.lang | 1 + htdocs/langs/ro_RO/stripe.lang | 2 + htdocs/langs/ro_RO/withdrawals.lang | 3 +- htdocs/langs/ru_RU/accountancy.lang | 5 +- htdocs/langs/ru_RU/admin.lang | 27 +- htdocs/langs/ru_RU/bills.lang | 15 + htdocs/langs/ru_RU/errors.lang | 3 +- htdocs/langs/ru_RU/main.lang | 2 + htdocs/langs/ru_RU/products.lang | 1 + htdocs/langs/ru_RU/stripe.lang | 2 + htdocs/langs/ru_RU/withdrawals.lang | 3 +- htdocs/langs/sk_SK/accountancy.lang | 5 +- htdocs/langs/sk_SK/admin.lang | 27 +- htdocs/langs/sk_SK/bills.lang | 15 + htdocs/langs/sk_SK/errors.lang | 3 +- htdocs/langs/sk_SK/main.lang | 2 + htdocs/langs/sk_SK/products.lang | 1 + htdocs/langs/sk_SK/stripe.lang | 2 + htdocs/langs/sk_SK/withdrawals.lang | 3 +- htdocs/langs/sl_SI/accountancy.lang | 5 +- htdocs/langs/sl_SI/admin.lang | 27 +- htdocs/langs/sl_SI/bills.lang | 15 + htdocs/langs/sl_SI/errors.lang | 3 +- htdocs/langs/sl_SI/main.lang | 2 + htdocs/langs/sl_SI/products.lang | 1 + htdocs/langs/sl_SI/stripe.lang | 2 + htdocs/langs/sl_SI/withdrawals.lang | 3 +- htdocs/langs/sq_AL/accountancy.lang | 5 +- htdocs/langs/sq_AL/admin.lang | 27 +- htdocs/langs/sq_AL/bills.lang | 15 + htdocs/langs/sq_AL/errors.lang | 3 +- htdocs/langs/sq_AL/main.lang | 2 + htdocs/langs/sq_AL/products.lang | 1 + htdocs/langs/sq_AL/stripe.lang | 2 + htdocs/langs/sq_AL/withdrawals.lang | 3 +- htdocs/langs/sr_RS/accountancy.lang | 5 +- htdocs/langs/sr_RS/admin.lang | 27 +- htdocs/langs/sr_RS/bills.lang | 15 + htdocs/langs/sr_RS/errors.lang | 3 +- htdocs/langs/sr_RS/main.lang | 2 + htdocs/langs/sr_RS/products.lang | 1 + htdocs/langs/sr_RS/withdrawals.lang | 3 +- htdocs/langs/sv_SE/accountancy.lang | 5 +- htdocs/langs/sv_SE/admin.lang | 27 +- htdocs/langs/sv_SE/bills.lang | 15 + htdocs/langs/sv_SE/errors.lang | 3 +- htdocs/langs/sv_SE/main.lang | 2 + htdocs/langs/sv_SE/products.lang | 1 + htdocs/langs/sv_SE/stripe.lang | 2 + htdocs/langs/sv_SE/withdrawals.lang | 3 +- htdocs/langs/sw_SW/accountancy.lang | 5 +- htdocs/langs/sw_SW/admin.lang | 27 +- htdocs/langs/sw_SW/bills.lang | 15 + htdocs/langs/sw_SW/errors.lang | 3 +- htdocs/langs/sw_SW/main.lang | 2 + htdocs/langs/sw_SW/products.lang | 1 + htdocs/langs/sw_SW/withdrawals.lang | 3 +- htdocs/langs/th_TH/accountancy.lang | 5 +- htdocs/langs/th_TH/admin.lang | 27 +- htdocs/langs/th_TH/bills.lang | 15 + htdocs/langs/th_TH/errors.lang | 3 +- htdocs/langs/th_TH/main.lang | 2 + htdocs/langs/th_TH/products.lang | 1 + htdocs/langs/th_TH/stripe.lang | 2 + htdocs/langs/th_TH/withdrawals.lang | 3 +- htdocs/langs/tr_TR/accountancy.lang | 5 +- htdocs/langs/tr_TR/admin.lang | 27 +- htdocs/langs/tr_TR/bills.lang | 15 + htdocs/langs/tr_TR/errors.lang | 3 +- htdocs/langs/tr_TR/main.lang | 2 + htdocs/langs/tr_TR/products.lang | 1 + htdocs/langs/tr_TR/stripe.lang | 2 + htdocs/langs/tr_TR/withdrawals.lang | 3 +- htdocs/langs/uk_UA/accountancy.lang | 5 +- htdocs/langs/uk_UA/admin.lang | 27 +- htdocs/langs/uk_UA/bills.lang | 15 + htdocs/langs/uk_UA/errors.lang | 3 +- htdocs/langs/uk_UA/main.lang | 2 + htdocs/langs/uk_UA/products.lang | 1 + htdocs/langs/uk_UA/stripe.lang | 2 + htdocs/langs/uk_UA/withdrawals.lang | 3 +- htdocs/langs/uz_UZ/accountancy.lang | 5 +- htdocs/langs/uz_UZ/admin.lang | 27 +- htdocs/langs/uz_UZ/bills.lang | 15 + htdocs/langs/uz_UZ/errors.lang | 3 +- htdocs/langs/uz_UZ/main.lang | 2 + htdocs/langs/uz_UZ/products.lang | 1 + htdocs/langs/uz_UZ/withdrawals.lang | 3 +- htdocs/langs/vi_VN/accountancy.lang | 5 +- htdocs/langs/vi_VN/admin.lang | 27 +- htdocs/langs/vi_VN/bills.lang | 15 + htdocs/langs/vi_VN/errors.lang | 3 +- htdocs/langs/vi_VN/main.lang | 2 + htdocs/langs/vi_VN/products.lang | 1 + htdocs/langs/vi_VN/stripe.lang | 2 + htdocs/langs/vi_VN/withdrawals.lang | 3 +- htdocs/langs/zh_CN/accountancy.lang | 5 +- htdocs/langs/zh_CN/admin.lang | 27 +- htdocs/langs/zh_CN/bills.lang | 15 + htdocs/langs/zh_CN/errors.lang | 3 +- htdocs/langs/zh_CN/main.lang | 2 + htdocs/langs/zh_CN/products.lang | 1 + htdocs/langs/zh_CN/stripe.lang | 2 + htdocs/langs/zh_CN/withdrawals.lang | 3 +- htdocs/langs/zh_TW/accountancy.lang | 5 +- htdocs/langs/zh_TW/admin.lang | 27 +- htdocs/langs/zh_TW/bills.lang | 15 + htdocs/langs/zh_TW/errors.lang | 3 +- htdocs/langs/zh_TW/main.lang | 2 + htdocs/langs/zh_TW/products.lang | 1 + htdocs/langs/zh_TW/stripe.lang | 2 + htdocs/langs/zh_TW/withdrawals.lang | 3 +- 512 files changed, 4027 insertions(+), 2421 deletions(-) diff --git a/htdocs/langs/ar_SA/accountancy.lang b/htdocs/langs/ar_SA/accountancy.lang index 1cdb76f1100..923d4ec20e9 100644 --- a/htdocs/langs/ar_SA/accountancy.lang +++ b/htdocs/langs/ar_SA/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=طبيعة +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=مبيعات AccountingJournalType3=مشتريات @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=الخيارات OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/ar_SA/admin.lang b/htdocs/langs/ar_SA/admin.lang index 1cbca5d3f51..3169b9acfad 100644 --- a/htdocs/langs/ar_SA/admin.lang +++ b/htdocs/langs/ar_SA/admin.lang @@ -574,7 +574,7 @@ Module510Name=الرواتب Module510Desc=Record and track employee payments Module520Name=القروض Module520Desc=إدارة القروض -Module600Name=الإخطارات +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=سمات التكميلية (أوامر) ExtraFieldsSupplierInvoices=سمات التكميلية (الفواتير) ExtraFieldsProject=سمات التكميلية (مشاريع) ExtraFieldsProjectTask=سمات التكميلية (المهام) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=السمة %s له قيمة خاطئة. AlphaNumOnlyLowerCharsAndNoSpace=alphanumericals فقط وشخصيات الحالة الأدنى دون الفضاء SendmailOptionNotComplete=تحذير، في بعض أنظمة لينكس، لإرسال البريد الإلكتروني من البريد الإلكتروني الخاص بك، يجب أن تنسخ الإعداد تنفيذ conatins الخيار، على درجة البكالوريوس (mail.force_extra_parameters المعلمة في ملف php.ini الخاص بك). إذا كان بعض المستفيدين لم تلقي رسائل البريد الإلكتروني، في محاولة لتعديل هذه المعلمة PHP مع mail.force_extra_parameters =-BA). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=تخزين جلسة المشفرة بواسطة Suhosin ConditionIsCurrently=الشرط هو حاليا %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=البحث الأمثل -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug غير محملة. -XCacheInstalled=XCache غير محملة. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=تم تفعيل أي وحدة قادرة على إدارة زيادة المخزون التلقائي. وسوف يتم زيادة الأسهم على الإدخال اليدوي فقط. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=عتبة @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/ar_SA/bills.lang b/htdocs/langs/ar_SA/bills.lang index 2984cd416a7..793a1e530a1 100644 --- a/htdocs/langs/ar_SA/bills.lang +++ b/htdocs/langs/ar_SA/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=دفع أعلى من دفع تذكرة HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=تصنيف 'مدفوع' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=تصنيف 'مدفوع جزئيا' ClassifyCanceled=تصنيف 'المهجورة' ClassifyClosed=تصنيف 'مغلقة' @@ -214,6 +215,20 @@ ShowInvoiceReplace=وتظهر استبدال الفاتورة ShowInvoiceAvoir=وتظهر المذكرة الائتمان ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=وتظهر الدفع AlreadyPaid=دفعت بالفعل AlreadyPaidBack=دفعت بالفعل العودة diff --git a/htdocs/langs/ar_SA/errors.lang b/htdocs/langs/ar_SA/errors.lang index 87689d4edd1..7837448f102 100644 --- a/htdocs/langs/ar_SA/errors.lang +++ b/htdocs/langs/ar_SA/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=غير مسموح الأحرف الخاصة ErrorNumRefModel=إشارة إلى وجود قاعدة بيانات (%s) ، وغير متوافق مع هذه القاعدة الترقيم. سجل إزالة أو إعادة تسميته اشارة الى تفعيل هذه الوحدة. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=خطأ في قناع ErrorBadMaskFailedToLocatePosOfSequence=خطأ، من دون قناع رقم التسلسل ErrorBadMaskBadRazMonth=خطأ، قيمة إعادة سيئة @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=تم تعيين كلمة مرور لهذا العضو. ومع ذلك، تم إنشاء أي حساب المستخدم. لذلك يتم تخزين كلمة المرور هذه ولكن لا يمكن استخدامها للدخول إلى Dolibarr. ويمكن استخدامه من قبل وحدة / واجهة خارجية ولكن إذا كنت لا تحتاج إلى تعريف أي تسجيل دخول أو كلمة المرور لأحد أفراد، يمكنك تعطيل خيار "إدارة تسجيل دخول لكل عضو" من إعداد وحدة الأعضاء. إذا كنت بحاجة إلى إدارة تسجيل الدخول ولكن لا تحتاج إلى أي كلمة المرور، يمكنك الحفاظ على هذا الحقل فارغا لتجنب هذا التحذير. ملاحظة: يمكن أيضا أن تستخدم البريد الإلكتروني لتسجيل الدخول إذا تم ربط عضو إلى المستخدم. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/ar_SA/main.lang b/htdocs/langs/ar_SA/main.lang index ec726e1e0c3..7a2c477c7d0 100644 --- a/htdocs/langs/ar_SA/main.lang +++ b/htdocs/langs/ar_SA/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=اتصالات / عناوين لهذا الطرف ا AddressesForCompany=عناوين لهذا الطرف الثالث ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=الأحداث عن هذا العضو ActionsOnProduct=Events about this product NActionsLate=٪ في وقت متأخر الصورة @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=إنشاء مشروع SetToDraft=العودة إلى مشروع ClickToEdit=انقر للتحرير diff --git a/htdocs/langs/ar_SA/products.lang b/htdocs/langs/ar_SA/products.lang index c7830aa9639..9087ef24c7d 100644 --- a/htdocs/langs/ar_SA/products.lang +++ b/htdocs/langs/ar_SA/products.lang @@ -2,6 +2,7 @@ ProductRef=مرجع المنتج ProductLabel=وصف المنتج ProductLabelTranslated=تسمية المنتج مترجمة +ProductDescription=Product description ProductDescriptionTranslated=ترجمة وصف المنتج ProductNoteTranslated=ترجمة مذكرة المنتج ProductServiceCard=منتجات / بطاقة الخدمات diff --git a/htdocs/langs/ar_SA/stripe.lang b/htdocs/langs/ar_SA/stripe.lang index 594741ab0e8..ad1b053be34 100644 --- a/htdocs/langs/ar_SA/stripe.lang +++ b/htdocs/langs/ar_SA/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/ar_SA/withdrawals.lang b/htdocs/langs/ar_SA/withdrawals.lang index da24cce0722..c0bd2dd5d6f 100644 --- a/htdocs/langs/ar_SA/withdrawals.lang +++ b/htdocs/langs/ar_SA/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=ملف الانسحاب SetToStatusSent=تعيين إلى حالة "المرسلة ملف" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=إحصاءات عن طريق وضع خطوط -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/bg_BG/accountancy.lang b/htdocs/langs/bg_BG/accountancy.lang index 671bcc70f07..2f8ed951db1 100644 --- a/htdocs/langs/bg_BG/accountancy.lang +++ b/htdocs/langs/bg_BG/accountancy.lang @@ -1,347 +1,348 @@ # Dolibarr language file - en_US - Accounting Expert -Accounting=Accounting -ACCOUNTING_EXPORT_SEPARATORCSV=Разделител за колона за експорт на файл -ACCOUNTING_EXPORT_DATE=Формат на дата за експорт на файл -ACCOUNTING_EXPORT_PIECE=Експортирай номера от частта -ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Експортирай глобалния акаунт -ACCOUNTING_EXPORT_LABEL=Export label -ACCOUNTING_EXPORT_AMOUNT=Сума за износ -ACCOUNTING_EXPORT_DEVISE=Експортна валута -Selectformat=Избери формата за файла -ACCOUNTING_EXPORT_FORMAT=Избери формата за файла -ACCOUNTING_EXPORT_ENDLINE=Select the carriage return type -ACCOUNTING_EXPORT_PREFIX_SPEC=Уточнете префикса за името на файла +Accounting=Счетоводство +ACCOUNTING_EXPORT_SEPARATORCSV=Разделител на колони в експортен файл +ACCOUNTING_EXPORT_DATE=Формат на дата в експортен файл +ACCOUNTING_EXPORT_PIECE=Експортиране на пореден номер +ACCOUNTING_EXPORT_GLOBAL_ACCOUNT=Експортиране с глобална сметка +ACCOUNTING_EXPORT_LABEL=Етикет на експортиране +ACCOUNTING_EXPORT_AMOUNT=Сума за експортиране +ACCOUNTING_EXPORT_DEVISE=Валута за експортиране +Selectformat=Изберете формата за файла +ACCOUNTING_EXPORT_FORMAT=Изберете формата за файла +ACCOUNTING_EXPORT_ENDLINE=Изберете типа пренасяне на нов ред +ACCOUNTING_EXPORT_PREFIX_SPEC=Посочете префикса в името на файла ThisService=Тази услуга ThisProduct=Този продукт -DefaultForService=Default for service +DefaultForService=По подразбиране за услуга DefaultForProduct=По подразбиране за продукт -CantSuggest=Не мога да предложа -AccountancySetupDoneFromAccountancyMenu=Most setup of the accountancy is done from the menu %s -ConfigAccountingExpert=Configuration of the module accounting expert +CantSuggest=Не може да се предложи +AccountancySetupDoneFromAccountancyMenu=Повечето настройки на счетоводството се извършват от менюто %s +ConfigAccountingExpert=Конфигурация на модул за експертно счетоводство Journalization=Осчетоводяване Journaux=Журнали -JournalFinancial=Financial journals -BackToChartofaccounts=Return chart of accounts -Chartofaccounts=Chart of accounts -CurrentDedicatedAccountingAccount=Current dedicated account -AssignDedicatedAccountingAccount=New account to assign -InvoiceLabel=Invoice label -OverviewOfAmountOfLinesNotBound=Overview of amount of lines not bound to an accounting account -OverviewOfAmountOfLinesBound=Overview of amount of lines already bound to an accounting account +JournalFinancial=Финансови журнали +BackToChartofaccounts=Връщане към сметкоплана +Chartofaccounts=Сметкоплан +CurrentDedicatedAccountingAccount=Текуща специална сметка +AssignDedicatedAccountingAccount=Нова сметка за присвояване +InvoiceLabel=Етикет за фактура +OverviewOfAmountOfLinesNotBound=Преглед на количеството редове, които не са обвързани със счетоводна сметка +OverviewOfAmountOfLinesBound=Преглед на количеството редове, които вече са свързани към счетоводна сметка OtherInfo=Друга информация -DeleteCptCategory=Remove accounting account from group -ConfirmDeleteCptCategory=Are you sure you want to remove this accounting account from the accounting account group? -JournalizationInLedgerStatus=Status of journalization -AlreadyInGeneralLedger=Already journalized in ledgers -NotYetInGeneralLedger=Not yet journalized in ledgers -GroupIsEmptyCheckSetup=Group is empty, check setup of the personalized accounting group -DetailByAccount=Show detail by account -AccountWithNonZeroValues=Accounts with non-zero values -ListOfAccounts=List of accounts -CountriesInEEC=Countries in EEC -CountriesNotInEEC=Countries not in EEC -CountriesInEECExceptMe=Countries in EEC except %s -CountriesExceptMe=All countries except %s -AccountantFiles=Export accounting documents +DeleteCptCategory=Премахване на счетоводна сметка от група +ConfirmDeleteCptCategory=Сигурни ли сте, че искате да премахнете тази счетоводна сметка от групата счетоводни сметки? +JournalizationInLedgerStatus=Статус на осчетоводяване +AlreadyInGeneralLedger=Вече осчетоводено в главната счетоводна книга +NotYetInGeneralLedger=Все още не е осчетоводено в главната счетоводна книга +GroupIsEmptyCheckSetup=Групата е празна, проверете настройката на персонализираната счетоводна група +DetailByAccount=Показване на детайли по сметка +AccountWithNonZeroValues=Сметки с различни от нула стойности +ListOfAccounts=Списък на сметки +CountriesInEEC=Държави в ЕИО +CountriesNotInEEC=Държави извън ЕИО +CountriesInEECExceptMe=Държави в ЕИО, с изключение на %s +CountriesExceptMe=Всички държави с изключение на %s +AccountantFiles=Експортиране на счетоводни документи -MainAccountForCustomersNotDefined=Main accounting account for customers not defined in setup -MainAccountForSuppliersNotDefined=Main accounting account for vendors not defined in setup -MainAccountForUsersNotDefined=Main accounting account for users not defined in setup -MainAccountForVatPaymentNotDefined=Main accounting account for VAT payment not defined in setup -MainAccountForSubscriptionPaymentNotDefined=Main accounting account for subscription payment not defined in setup +MainAccountForCustomersNotDefined=Основна счетоводна сметка за клиенти, която не е дефинирана в настройката +MainAccountForSuppliersNotDefined=Основна счетоводна сметка за доставчици, която не е дефинирана в настройката +MainAccountForUsersNotDefined=Основна счетоводна сметка за потребители, която не е дефинирана в настройката +MainAccountForVatPaymentNotDefined=Основна счетоводна сметка за плащане на ДДС, която не е дефинирана в настройката +MainAccountForSubscriptionPaymentNotDefined=Основна счетоводна сметка за плащане на абонамент, която не е дефинирана в настройката -AccountancyArea=Accounting area -AccountancyAreaDescIntro=Usage of the accountancy module is done in several step: -AccountancyAreaDescActionOnce=The following actions are usually executed one time only, or once per year... -AccountancyAreaDescActionOnceBis=Next steps should be done to save you time in future by suggesting you the correct default accounting account when making the journalization (writing record in Journals and General ledger) -AccountancyAreaDescActionFreq=The following actions are usually executed every month, week or day for very large companies... +AccountancyArea=Секция за счетоводство +AccountancyAreaDescIntro=Използването на счетоводния модул се извършва на няколко стъпки: +AccountancyAreaDescActionOnce=Следните действия се изпълняват обикновено само веднъж или веднъж годишно... +AccountancyAreaDescActionOnceBis=Следващите стъпки трябва да се направят, за да ви спестят време в бъдеще, като ви предлагат правилната счетоводна сметка по подразбиране при извършване на осчетоводяване (добавяне на записи в журнали и в главната счетоводна книга) +AccountancyAreaDescActionFreq=Следните действия се изпълняват обикновено всеки месец, седмица или ден при много големи компании... -AccountancyAreaDescJournalSetup=STEP %s: Create or check content of your journal list from menu %s -AccountancyAreaDescChartModel=STEP %s: Create a model of chart of account from menu %s -AccountancyAreaDescChart=STEP %s: Create or check content of your chart of account from menu %s +AccountancyAreaDescJournalSetup=СТЪПКА %s: Създайте или проверете съдържанието на списъка с журнали от меню %s +AccountancyAreaDescChartModel=СТЪПКА %s: Създайте модел на сметкоплана от меню %s +AccountancyAreaDescChart=СТЪПКА %s: Създайте или проверете съдържанието на вашият сметкоплан от меню %s -AccountancyAreaDescVat=STEP %s: Define accounting accounts for each VAT Rates. For this, use the menu entry %s. -AccountancyAreaDescDefault=STEP %s: Define default accounting accounts. For this, use the menu entry %s. -AccountancyAreaDescExpenseReport=STEP %s: Define default accounting accounts for each type of expense report. For this, use the menu entry %s. -AccountancyAreaDescSal=STEP %s: Define default accounting accounts for payment of salaries. For this, use the menu entry %s. -AccountancyAreaDescContrib=STEP %s: Define default accounting accounts for special expenses (miscellaneous taxes). For this, use the menu entry %s. -AccountancyAreaDescDonation=STEP %s: Define default accounting accounts for donation. For this, use the menu entry %s. -AccountancyAreaDescSubscription=STEP %s: Define default accounting accounts for member subscription. For this, use the menu entry %s. -AccountancyAreaDescMisc=STEP %s: Define mandatory default account and default accounting accounts for miscellaneous transactions. For this, use the menu entry %s. -AccountancyAreaDescLoan=STEP %s: Define default accounting accounts for loans. For this, use the menu entry %s. -AccountancyAreaDescBank=STEP %s: Define accounting accounts and journal code for each bank and financial accounts. For this, use the menu entry %s. -AccountancyAreaDescProd=STEP %s: Define accounting accounts on your products/services. For this, use the menu entry %s. +AccountancyAreaDescVat=СТЪПКА %s: Определете счетоводните сметки за всяка ставка на ДДС. За това използвайте менюто %s. +AccountancyAreaDescDefault=СТЪПКА %s: Определете счетоводните сметки по подразбиране. За това използвайте менюто %s. +AccountancyAreaDescExpenseReport=СТЪПКА %s: Определете счетоводните сметки по подразбиране за всеки вид разходен отчет. За това използвайте менюто %s. +AccountancyAreaDescSal=СТЪПКА %s: Определете счетоводните сметки по подразбиране за плащане на заплати. За това използвайте менюто %s. +AccountancyAreaDescContrib=СТЪПКА %s: Определете счетоводните сметки по подразбиране за специални разходи (различни данъци). За това използвайте менюто %s. +AccountancyAreaDescDonation=СТЪПКА %s: Определете счетоводните сметки по подразбиране за дарения. За това използвайте менюто %s. +AccountancyAreaDescSubscription=СТЪПКА %s: Определете счетоводните сметки по подразбиране за членски внос. За това използвайте менюто %s. +AccountancyAreaDescMisc=СТЪПКА %s: Определете задължителната сметка по подразбиране и счетоводните сметки по подразбиране за различни транзакции. За това използвайте менюто %s. +AccountancyAreaDescLoan=СТЪПКА %s: Определете счетоводните сметки по подразбиране за кредити. За това използвайте менюто %s. +AccountancyAreaDescBank=СТЪПКА %s: Определете счетоводните сметки и кодът на журнала за всяка банка и финансови сметки. За това използвайте менюто %s. +AccountancyAreaDescProd=СТЪПКА %s: Определете счетоводните сметки за вашите продукти / услуги. За това използвайте менюто %s. -AccountancyAreaDescBind=STEP %s: Check the binding between existing %s lines and accounting account is done, so application will be able to journalize transactions in Ledger in one click. Complete missing bindings. For this, use the menu entry %s. -AccountancyAreaDescWriteRecords=STEP %s: Write transactions into the Ledger. For this, go into menu %s, and click into button %s. -AccountancyAreaDescAnalyze=STEP %s: Add or edit existing transactions and generate reports and exports. +AccountancyAreaDescBind=СТЪПКА %s: Проверете обвързването между съществуващите %s реда и готовия счетоводен акаунт, така че системата да е в състояние да осчетоводи транзакции в главната счетоводна книга с едно кликване. Осъществете липсващите връзки. За това използвайте менюто %s. +AccountancyAreaDescWriteRecords=СТЪПКА %s: Запишете транзакции в главната счетоводна книга. За това влезте в меню %s и кликнете върху бутон %s. +AccountancyAreaDescAnalyze=СТЪПКА %s: Добавете или променете съществуващите транзакции и генерирайте отчети и експортни данни. -AccountancyAreaDescClosePeriod=STEP %s: Close period so we can't make modification in a future. +AccountancyAreaDescClosePeriod=СТЪПКА %s: Приключете периода, за да не може да се правят промени в бъдеще. -TheJournalCodeIsNotDefinedOnSomeBankAccount=A mandatory step in setup was not complete (accounting code journal not defined for all bank accounts) -Selectchartofaccounts=Select active chart of accounts -ChangeAndLoad=Change and load -Addanaccount=Add an accounting account -AccountAccounting=Accounting account +TheJournalCodeIsNotDefinedOnSomeBankAccount=Задължителна стъпка в настройката не е завършена (счетоводен код на журнал не е определен за всички банкови сметки) +Selectchartofaccounts=Изберете активен сметкоплан +ChangeAndLoad=Променяне и зареждане +Addanaccount=Добавяне на счетоводна сметка +AccountAccounting=Счетоводна сметка AccountAccountingShort=Сметка -SubledgerAccount=Subledger account -SubledgerAccountLabel=Subledger account label -ShowAccountingAccount=Show accounting account -ShowAccountingJournal=Show accounting journal -AccountAccountingSuggest=Accounting account suggested -MenuDefaultAccounts=Default accounts +SubledgerAccount=Счетоводна сметка +SubledgerAccountLabel=Етикет на счетоводна сметка +ShowAccountingAccount=Показване на счетоводна сметка +ShowAccountingJournal=Показване на счетоводен журнал +AccountAccountingSuggest=Предложена счетоводна сметка +MenuDefaultAccounts=Сметки по подразбиране MenuBankAccounts=Банкови сметки -MenuVatAccounts=Vat accounts -MenuTaxAccounts=Tax accounts -MenuExpenseReportAccounts=Expense report accounts -MenuLoanAccounts=Loan accounts -MenuProductsAccounts=Product accounts -MenuClosureAccounts=Closure accounts -ProductsBinding=Products accounts -TransferInAccounting=Transfer in accounting -RegistrationInAccounting=Registration in accounting -Binding=Binding to accounts -CustomersVentilation=Customer invoice binding -SuppliersVentilation=Vendor invoice binding -ExpenseReportsVentilation=Expense report binding -CreateMvts=Create new transaction -UpdateMvts=Modification of a transaction -ValidTransaction=Validate transaction -WriteBookKeeping=Register transactions in Ledger -Bookkeeping=Ledger -AccountBalance=Account balance -ObjectsRef=Source object ref -CAHTF=Total purchase vendor before tax -TotalExpenseReport=Total expense report -InvoiceLines=Lines of invoices to bind -InvoiceLinesDone=Bound lines of invoices -ExpenseReportLines=Lines of expense reports to bind -ExpenseReportLinesDone=Bound lines of expense reports -IntoAccount=Bind line with the accounting account +MenuVatAccounts=Сметки за ДДС +MenuTaxAccounts=Сметки за данъци +MenuExpenseReportAccounts=Сметки за разходни отчети +MenuLoanAccounts=Сметки за кредити +MenuProductsAccounts=Сметки за продукти +MenuClosureAccounts=Сметки за приключване +ProductsBinding=Сметки за продукти +TransferInAccounting=Трансфер към счетоводство +RegistrationInAccounting=Регистрация в счетоводство +Binding=Обвързване към сметки +CustomersVentilation=Обвързване на фактура за продажба +SuppliersVentilation=Обвързване на фактура за доставка +ExpenseReportsVentilation=Обвързващ на разходен отчет +CreateMvts=Създаване на нова транзакция +UpdateMvts=Променяне на транзакция +ValidTransaction=Валидиране на транзакция +WriteBookKeeping=Регистриране на транзакции в главната счетоводна книга +Bookkeeping=Главна счетоводна книга +AccountBalance=Салдо по сметка +ObjectsRef=Реф. източник на обект +CAHTF=Обща покупка от доставчик преди ДДС +TotalExpenseReport=Общ разходен отчет +InvoiceLines=Редове на фактури за свързване +InvoiceLinesDone=Свързани редове на фактури +ExpenseReportLines=Редове на разходни отчети за свързване +ExpenseReportLinesDone=Свързани редове на разходни отчети +IntoAccount=Свързване на ред със счетоводна сметка -Ventilate=Bind -LineId=Id line -Processing=Processing -EndProcessing=Process terminated. -SelectedLines=Selected lines -Lineofinvoice=Line of invoice -LineOfExpenseReport=Line of expense report -NoAccountSelected=No accounting account selected -VentilatedinAccount=Binded successfully to the accounting account -NotVentilatedinAccount=Not bound to the accounting account -XLineSuccessfullyBinded=%s products/services successfully bound to an accounting account -XLineFailedToBeBinded=%s products/services were not bound to any accounting account +Ventilate=Свързване +LineId=Идентификатор на ред +Processing=Обработване +EndProcessing=Обработването е прекратено. +SelectedLines=Избрани редове +Lineofinvoice=Ред на фактура +LineOfExpenseReport=Ред на разходен отчет +NoAccountSelected=Не е избрана счетоводна сметка +VentilatedinAccount=Успешно свързване към счетоводната сметка +NotVentilatedinAccount=Не е свързан със счетоводната сметка +XLineSuccessfullyBinded=%s продукти / услуги успешно са свързани към счетоводна сметка +XLineFailedToBeBinded=%s продукти / услуги, които не са свързани с нито една счетоводна сметка -ACCOUNTING_LIMIT_LIST_VENTILATION=Number of elements to bind shown by page (maximum recommended: 50) -ACCOUNTING_LIST_SORT_VENTILATION_TODO=Begin the sorting of the page "Binding to do" by the most recent elements -ACCOUNTING_LIST_SORT_VENTILATION_DONE=Begin the sorting of the page "Binding done" by the most recent elements +ACCOUNTING_LIMIT_LIST_VENTILATION=Брой елементи за свързване, показани на страница (препоръчително: 50) +ACCOUNTING_LIST_SORT_VENTILATION_TODO=Започнете сортирането на страницата „За свързване“, използвайки най-новите елементи +ACCOUNTING_LIST_SORT_VENTILATION_DONE=Започнете сортирането на страницата „Извършено свързване“, използвайки най-новите елементи -ACCOUNTING_LENGTH_DESCRIPTION=Truncate product & services description in listings after x chars (Best = 50) -ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT=Truncate product & services account description form in listings after x chars (Best = 50) -ACCOUNTING_LENGTH_GACCOUNT=Length of the general accounting accounts (If you set value to 6 here, the account '706' will appear like '706000' on screen) -ACCOUNTING_LENGTH_AACCOUNT=Дължина на счетоводните сметки на контрагенти (ако тук зададете стойност 6, сметка '401' ще се появи на екрана като '401000') -ACCOUNTING_MANAGE_ZERO=Allow to manage different number of zeros at the end of an accounting account. Needed by some countries (like Switzerland). If set to off (default), you can set the following two parameters to ask the application to add virtual zeros. -BANK_DISABLE_DIRECT_INPUT=Disable direct recording of transaction in bank account -ACCOUNTING_ENABLE_EXPORT_DRAFT_JOURNAL=Enable draft export on journal -ACCOUNTANCY_COMBO_FOR_AUX=Enable combo list for subsidiary account (may be slow if you have a lot of third parties) +ACCOUNTING_LENGTH_DESCRIPTION=Съкращаване на описанието на продукти и услуги в списъци след х символа (препоръчително: 50) +ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT=Съкращаване на описанието на сметката на продукти и услуги в списъци след x символа (препоръчително: 50) +ACCOUNTING_LENGTH_GACCOUNT=Дължина на главните счетоводни сметки (ако тук зададете стойност "6", сметката "706" ще се появи на екрана като "706000") +ACCOUNTING_LENGTH_AACCOUNT=Дължина на счетоводните сметки на контрагенти (ако тук зададете стойност "6", сметката "401" ще се появи на екрана като "401000") +ACCOUNTING_MANAGE_ZERO=Разрешава управление на различен брой нули в края на счетоводна сметка. Необходимо е в някои страни като Швейцария. Ако е изключено (по подразбиране) може да зададете следните два параметъра, за да поискате от системата да добави виртуални нули. +BANK_DISABLE_DIRECT_INPUT=Деактивиране на директно добавяне на транзакция в банкова сметка +ACCOUNTING_ENABLE_EXPORT_DRAFT_JOURNAL=Активиране на експортиране на журнали в състояние на чернова +ACCOUNTANCY_COMBO_FOR_AUX=Активиране на комбиниран списък за дъщерна сметка (може да създаде забавяне, ако имате много контрагенти) -ACCOUNTING_SELL_JOURNAL=Sell journal -ACCOUNTING_PURCHASE_JOURNAL=Purchase journal -ACCOUNTING_MISCELLANEOUS_JOURNAL=Miscellaneous journal -ACCOUNTING_EXPENSEREPORT_JOURNAL=Expense report journal -ACCOUNTING_SOCIAL_JOURNAL=Social journal -ACCOUNTING_HAS_NEW_JOURNAL=Has new Journal +ACCOUNTING_SELL_JOURNAL=Журнал за продажби +ACCOUNTING_PURCHASE_JOURNAL=Журнал за покупки +ACCOUNTING_MISCELLANEOUS_JOURNAL=Общ журнал +ACCOUNTING_EXPENSEREPORT_JOURNAL=Журнал за разходни отчети +ACCOUNTING_SOCIAL_JOURNAL=Журнал за данъци +ACCOUNTING_HAS_NEW_JOURNAL=Има нов журнал -ACCOUNTING_RESULT_PROFIT=Result accounting account (Profit) -ACCOUNTING_RESULT_LOSS=Result accounting account (Loss) -ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Journal of closure +ACCOUNTING_RESULT_PROFIT=Счетоводна сметка за резултат (печалба) +ACCOUNTING_RESULT_LOSS=Счетоводна сметка за резултат (загуба) +ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Журнал за приключване -ACCOUNTING_ACCOUNT_TRANSFER_CASH=Accounting account of transitional bank transfer -TransitionalAccount=Transitional bank transfer account +ACCOUNTING_ACCOUNT_TRANSFER_CASH=Счетоводна сметка на преходен банков превод +TransitionalAccount=Преходна сметка за банков превод -ACCOUNTING_ACCOUNT_SUSPENSE=Accounting account of wait -DONATION_ACCOUNTINGACCOUNT=Accounting account to register donations -ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Accounting account to register subscriptions +ACCOUNTING_ACCOUNT_SUSPENSE=Счетоводна сметка за изчакване +DONATION_ACCOUNTINGACCOUNT=Счетоводна сметка за регистриране на дарения +ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Счетоводен акаунт за регистриране на членски внос -ACCOUNTING_PRODUCT_BUY_ACCOUNT=Accounting account by default for bought products (used if not defined in the product sheet) -ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Accounting account by default for the sold products (used if not defined in the product sheet) -ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Accounting account by default for the sold products in EEC (used if not defined in the product sheet) -ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Accounting account by default for the sold products export out of EEC (used if not defined in the product sheet) -ACCOUNTING_SERVICE_BUY_ACCOUNT=Accounting account by default for the bought services (used if not defined in the service sheet) -ACCOUNTING_SERVICE_SOLD_ACCOUNT=Accounting account by default for the sold services (used if not defined in the service sheet) +ACCOUNTING_PRODUCT_BUY_ACCOUNT=Счетоводна сметка по подразбиране за закупени продукти (използва се, ако не е дефинирана в продуктовата карта) +ACCOUNTING_PRODUCT_SOLD_ACCOUNT=Счетоводна сметка по подразбиране за продадени продукти (използва се, ако не е дефинирана в продуктовата карта) +ACCOUNTING_PRODUCT_SOLD_INTRA_ACCOUNT=Счетоводна сметка по подразбиране за продадени продукти в ЕИО (използва се, ако не е дефинирана в продуктовата карта) +ACCOUNTING_PRODUCT_SOLD_EXPORT_ACCOUNT=Счетоводна сметка по подразбиране за продадени продукти извън ЕИО (използва се, ако не е дефинирана в продуктовата карта) +ACCOUNTING_SERVICE_BUY_ACCOUNT=Счетоводна сметка по подразбиране за закупени услуги (използва се, ако не е дефинирана в картата на услугата) +ACCOUNTING_SERVICE_SOLD_ACCOUNT=Счетоводна сметка по подразбиране за продадени услуги (използва се, ако не е дефинирана в картата на услугата) -Doctype=Тип на документа +Doctype=Вид документ Docdate=Дата -Docref=Справка +Docref=Референция LabelAccount=Етикет на сметка -LabelOperation=Label operation -Sens=Sens -LetteringCode=Lettering code -Lettering=Lettering -Codejournal=Дневник -JournalLabel=Journal label -NumPiece=Номер на част -TransactionNumShort=Num. transaction -AccountingCategory=Personalized groups -GroupByAccountAccounting=Group by accounting account -AccountingAccountGroupsDesc=You can define here some groups of accounting account. They will be used for personalized accounting reports. -ByAccounts=By accounts -ByPredefinedAccountGroups=By predefined groups -ByPersonalizedAccountGroups=By personalized groups -ByYear=С години -NotMatch=Not Set -DeleteMvt=Delete Ledger lines -DelYear=Year to delete -DelJournal=Journal to delete -ConfirmDeleteMvt=This will delete all lines of the Ledger for year and/or from a specific journal. At least one criterion is required. -ConfirmDeleteMvtPartial=This will delete the transaction from the Ledger (all lines related to same transaction will be deleted) -FinanceJournal=Finance journal -ExpenseReportsJournal=Expense reports journal -DescFinanceJournal=Finance journal including all the types of payments by bank account -DescJournalOnlyBindedVisible=This is a view of record that are bound to an accounting account and can be recorded into the Ledger. -VATAccountNotDefined=Account for VAT not defined -ThirdpartyAccountNotDefined=Account for third party not defined -ProductAccountNotDefined=Account for product not defined -FeeAccountNotDefined=Account for fee not defined -BankAccountNotDefined=Account for bank not defined -CustomerInvoicePayment=Payment of invoice customer -ThirdPartyAccount=Сметка на контрагент -NewAccountingMvt=New transaction -NumMvts=Numero of transaction -ListeMvts=List of movements -ErrorDebitCredit=Debit and Credit cannot have a value at the same time -AddCompteFromBK=Add accounting accounts to the group -ReportThirdParty=Списък със сметки на контрагенти -DescThirdPartyReport=Консултирайте се тук със списъка на контрагенти клиенти и доставчици и техните счетоводни сметки -ListAccounts=List of the accounting accounts -UnknownAccountForThirdparty=Неизвестен профил на контрагента. Ще използваме %s -UnknownAccountForThirdpartyBlocking=Неизвестен профил на контрагента. Блокираща грешка -ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Third-party account not defined or third party unknown. We will use %s -ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Third-party account not defined or third party unknown. Blocking error. -UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Неизвестен профил на контрагента и чакаща сметка не са определени. Блокираща грешка -PaymentsNotLinkedToProduct=Payment not linked to any product / service +LabelOperation=Етикет на операция +Sens=Значение +LetteringCode=Буквен код +Lettering=Означение +Codejournal=Журнал +JournalLabel=Етикет на журнал +NumPiece=Пореден номер +TransactionNumShort=Транзакция № +AccountingCategory=Персонализирани групи +GroupByAccountAccounting=Групиране по счетоводна сметка +AccountingAccountGroupsDesc=Тук може да определите някои групи счетоводни сметки. Те ще бъдат използвани за персонализирани счетоводни отчети. +ByAccounts=По сметки +ByPredefinedAccountGroups=По предварително определени групи +ByPersonalizedAccountGroups=По персонализирани групи +ByYear=По година +NotMatch=Не е зададено +DeleteMvt=Изтриване на редове от книгата +DelYear=Година за изтриване +DelJournal=Журнал за изтриване +ConfirmDeleteMvt=Това ще изтрие всички редове в книгата за година и / или от конкретен журнал. Изисква се поне един критерий. +ConfirmDeleteMvtPartial=Това ще изтрие транзакцията от книгата (всички редове, свързани с една и съща транзакция ще бъдат изтрити) +FinanceJournal=Финансов журнал +ExpenseReportsJournal=Журнал за разходни отчети +DescFinanceJournal=Финансов журнал, включващ всички видове плащания по банкова сметка +DescJournalOnlyBindedVisible=Това е преглед на запис, който е свързан към счетоводна сметка и може да бъде добавен в книгата. +VATAccountNotDefined= Не е определена сметка за ДДС +ThirdpartyAccountNotDefined=Не е определена сметка за контрагент +ProductAccountNotDefined=Не е определена сметка за продукт +FeeAccountNotDefined=Не е определена сметка за такса +BankAccountNotDefined=Не е определена сметка за банка +CustomerInvoicePayment=Плащане на фактура за продажба +ThirdPartyAccount=Сметка на контрагент +NewAccountingMvt=Нова транзакция +NumMvts=Брой транзакции +ListeMvts=Списък на движения +ErrorDebitCredit=Дебитът и кредитът не могат да имат стойност по едно и също време +AddCompteFromBK=Добавяне на счетоводни сметки към групата +ReportThirdParty=Списък на сметки на контрагенти +DescThirdPartyReport=Преглед на списъка с клиенти и доставчици, и техните счетоводни сметки +ListAccounts=Списък на счетоводни сметки +UnknownAccountForThirdparty=Неизвестна сметна на контрагент. Ще използваме %s +UnknownAccountForThirdpartyBlocking=Неизвестна сметка на контрагент. Блокираща грешка. +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Сметката на контрагента не е определена или контрагента е неизвестен. Ще използваме %s +ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Сметката на контрагента не е определена или контрагента е неизвестен. Блокираща грешка. +UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Неизвестна сметка на контрагент и сметка за изчакване не са определени. Блокираща грешка. +PaymentsNotLinkedToProduct=Плащането не е свързано с нито един продукт / услуга -Pcgtype=Group of account -Pcgsubtype=Subgroup of account -PcgtypeDesc=Group and subgroup of account are used as predefined 'filter' and 'grouping' criteria for some accounting reports. For example, 'INCOME' or 'EXPENSE' are used as groups for accounting accounts of products to build the expense/income report. +Pcgtype=Група от сметки +Pcgsubtype=Подгрупа от сметки +PcgtypeDesc=Групата и подгрупата на акаунта се използват като предварително зададени критерии за „филтриране“ и „групиране“ за някои счетоводни справки. Например „Приход“ или „Разход“ се използват като групи за счетоводни сметки на продукти за съставяне на справка за разходите / приходите. -TotalVente=Total turnover before tax -TotalMarge=Total sales margin +TotalVente=Общ оборот преди ДДС +TotalMarge=Общ марж на продажби -DescVentilCustomer=Consult here the list of customer invoice lines bound (or not) to a product accounting account -DescVentilMore=In most cases, if you use predefined products or services and you set the account number on the product/service card, the application will be able to make all the binding between your invoice lines and the accounting account of your chart of accounts, just in one click with the button "%s". If account was not set on product/service cards or if you still have some lines not bound to an account, you will have to make a manual binding from the menu "%s". -DescVentilDoneCustomer=Consult here the list of the lines of invoices customers and their product accounting account -DescVentilTodoCustomer=Bind invoice lines not already bound with a product accounting account -ChangeAccount=Change the product/service accounting account for selected lines with the following accounting account: +DescVentilCustomer=Преглед на списъка с редове на фактури за продажба, свързани (или не) със счетоводна сметка на продукт +DescVentilMore=В повечето случаи, ако използвате предварително дефинирани продукти или услуги и зададете номер на сметка в картата на продукта / услугата, то системата ще може да извърши всички свързвания между вашите редове на фактури и счетоводната сметка във вашия сметкоплан, просто с едно щракване с бутона "%s". Ако сметката не е зададена в картата на продукта / услугата или ако все още имате някои редове, които не са свързани към сметка, то ще трябва да направите ръчно свързване от менюто "%s". +DescVentilDoneCustomer=Преглед на списъка с редове на фактури за продажба и тяхната счетоводна сметка за продукти +DescVentilTodoCustomer=Свързване на редове на фактури, които все още не са свързани със счетоводна сметка за продукт +ChangeAccount=Променете счетоводната сметка на продукта / услугата за избрани редове със следната счетоводна сметка: Vide=- -DescVentilSupplier=Consult here the list of vendor invoice lines bound or not yet bound to a product accounting account -DescVentilDoneSupplier=Consult here the list of the lines of vendor invoices and their accounting account -DescVentilTodoExpenseReport=Bind expense report lines not already bound with a fee accounting account -DescVentilExpenseReport=Consult here the list of expense report lines bound (or not) to a fee accounting account -DescVentilExpenseReportMore=If you setup accounting account on type of expense report lines, the application will be able to make all the binding between your expense report lines and the accounting account of your chart of accounts, just in one click with the button "%s". If account was not set on fees dictionary or if you still have some lines not bound to any account, you will have to make a manual binding from the menu "%s". -DescVentilDoneExpenseReport=Consult here the list of the lines of expenses reports and their fees accounting account +DescVentilSupplier=Преглед на списъка с редове на фактури за доставка, свързани (или все още не) със счетоводна сметка за продукт +DescVentilDoneSupplier=Преглед на списъка с редове на фактури за доставка и тяхната счетоводна сметка +DescVentilTodoExpenseReport=Свържете редове на разходни отчети, които все още не са свързани със счетоводна сметка за такса +DescVentilExpenseReport=Преглед на списъка с редове на разходни отчети, свързани (или не) със счетоводна сметка за такса +DescVentilExpenseReportMore=Ако настроите счетоводна сметка за видовете разходен отчет, то системата ще може да извърши всички свързвания между редовете на разходния отчет и счетоводната сметка във вашия сметкоплан, просто с едно щракване с бутона "%s". Ако сметката не е зададена в речника с таксите или ако все още имате някои редове, които не са свързани с нито една сметка ще трябва да направите ръчно свързване от менюто "%s". +DescVentilDoneExpenseReport=Преглед на списъка с редове на разходни отчети и тяхната счетоводна сметка за такса -ValidateHistory=Bind Automatically -AutomaticBindingDone=Automatic binding done +ValidateHistory=Автоматично свързване +AutomaticBindingDone=Автоматичното свързване завърши -ErrorAccountancyCodeIsAlreadyUse=Възникна грешка, вие не можете да изтриете тази счетоводна сметка, защото се използва. -MvtNotCorrectlyBalanced=Movement not correctly balanced. Debit = %s | Credit = %s -Balancing=Balancing -FicheVentilation=Binding card -GeneralLedgerIsWritten=Transactions are written in the Ledger -GeneralLedgerSomeRecordWasNotRecorded=Some of the transactions could not be journalized. If there is no other error message, this is probably because they were already journalized. -NoNewRecordSaved=No more record to journalize -ListOfProductsWithoutAccountingAccount=List of products not bound to any accounting account -ChangeBinding=Change the binding -Accounted=Accounted in ledger -NotYetAccounted=Not yet accounted in ledger +ErrorAccountancyCodeIsAlreadyUse=Грешка, не може да изтриете тази счетоводна сметка, защото се използва. +MvtNotCorrectlyBalanced=Движението не е правилно балансирано. Дебит = %s | Credit = %s +Balancing=Балансиране +FicheVentilation=Свързваща карта +GeneralLedgerIsWritten=Транзакциите са записани в главната счетоводна книга +GeneralLedgerSomeRecordWasNotRecorded=Някои от транзакциите не бяха осчетоводени. Ако няма друго съобщение за грешка, то това вероятно е, защото те вече са били осчетоводени. +NoNewRecordSaved=Няма повече записи за осчетоводяване +ListOfProductsWithoutAccountingAccount=Списък на продукти, които не са свързани с нито една счетоводна сметка +ChangeBinding=Промяна на свързване +Accounted=Осчетоводено в книгата +NotYetAccounted=Все още не е осчетоводено в книгата ## Admin -ApplyMassCategories=Apply mass categories -AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group -CategoryDeleted=Category for the accounting account has been removed -AccountingJournals=Счетоводни дневници -AccountingJournal=Accounting journal -NewAccountingJournal=New accounting journal -ShowAccoutingJournal=Show accounting journal -Nature=Същност -AccountingJournalType1=Miscellaneous operations -AccountingJournalType2=Sales -AccountingJournalType3=Purchases +ApplyMassCategories=Прилагане на масови категории +AddAccountFromBookKeepingWithNoCategories=Наличната сметка не е част от персонализирана група +CategoryDeleted=Категорията за счетоводната сметка е премахната +AccountingJournals=Счетоводни журнали +AccountingJournal=Счетоводен журнал +NewAccountingJournal=Нов счетоводен журнал +ShowAccoutingJournal=Показване на счетоводен журнал +NatureOfJournal=Nature of Journal +AccountingJournalType1=Разнородни операции +AccountingJournalType2=Продажби +AccountingJournalType3=Покупки AccountingJournalType4=Банка -AccountingJournalType5=Expenses report -AccountingJournalType8=Складова наличност -AccountingJournalType9=Has-new -ErrorAccountingJournalIsAlreadyUse=This journal is already use -AccountingAccountForSalesTaxAreDefinedInto=Note: Accounting account for Sales tax are defined into menu %s - %s -NumberOfAccountancyEntries=Number of entries -NumberOfAccountancyMovements=Number of movements +AccountingJournalType5=Разходни отчети +AccountingJournalType8=Инвентар +AccountingJournalType9=Има нови +ErrorAccountingJournalIsAlreadyUse=Този журнал вече се използва +AccountingAccountForSalesTaxAreDefinedInto=Бележка: Счетоводната сметка за данък върху продажбите е дефинирана в меню %s - %s +NumberOfAccountancyEntries=Брой записи +NumberOfAccountancyMovements=Брой движения ## Export -ExportDraftJournal=Export draft journal -Modelcsv=Model of export -Selectmodelcsv=Select a model of export -Modelcsv_normal=Classic export -Modelcsv_CEGID=Export for CEGID Expert Comptabilité -Modelcsv_COALA=Export for Sage Coala -Modelcsv_bob50=Export for Sage BOB 50 -Modelcsv_ciel=Export for Sage Ciel Compta or Compta Evolution -Modelcsv_quadratus=Export for Quadratus QuadraCompta -Modelcsv_ebp=Export for EBP -Modelcsv_cogilog=Export for Cogilog -Modelcsv_agiris=Export for Agiris -Modelcsv_openconcerto=Export for OpenConcerto (Test) -Modelcsv_configurable=Export CSV Configurable -Modelcsv_FEC=Export FEC -Modelcsv_Sage50_Swiss=Export for Sage 50 Switzerland -ChartofaccountsId=Chart of accounts Id +ExportDraftJournal=Експортиране на журнал в чернова +Modelcsv=Модел на експортиране +Selectmodelcsv=Изберете модел на експортиране +Modelcsv_normal=Класическо експортиране +Modelcsv_CEGID=Експортиране за CEGID Expert Comptabilité +Modelcsv_COALA=Експортиране за Sage Coala +Modelcsv_bob50=Експортиране за Sage BOB 50 +Modelcsv_ciel=Експортиране за Sage Ciel Compta или Compta Evolution +Modelcsv_quadratus=Експортиране за Quadratus QuadraCompta +Modelcsv_ebp=Експортиране за EBP +Modelcsv_cogilog=Експортиране за Cogilog +Modelcsv_agiris=Експортиране за Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) +Modelcsv_openconcerto=Експортиране за OpenConcerto (Тест) +Modelcsv_configurable=Експортиране в конфигурируем CSV +Modelcsv_FEC=Експортиране за FEC +Modelcsv_Sage50_Swiss=Експортиране за Sage 50 Швейцария +ChartofaccountsId=Идентификатор на сметкоплан ## Tools - Init accounting account on product / service -InitAccountancy=Init accountancy -InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. -DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. -Options=Options -OptionModeProductSell=Mode sales -OptionModeProductSellIntra=Mode sales exported in EEC -OptionModeProductSellExport=Mode sales exported in other countries -OptionModeProductBuy=Mode purchases -OptionModeProductSellDesc=Show all products with accounting account for sales. -OptionModeProductSellIntraDesc=Show all products with accounting account for sales in EEC. -OptionModeProductSellExportDesc=Show all products with accounting account for other foreign sales. -OptionModeProductBuyDesc=Show all products with accounting account for purchases. -CleanFixHistory=Remove accounting code from lines that not exists into charts of account -CleanHistory=Reset all bindings for selected year -PredefinedGroups=Predefined groups -WithoutValidAccount=Without valid dedicated account -WithValidAccount=With valid dedicated account -ValueNotIntoChartOfAccount=This value of accounting account does not exist into chart of account -AccountRemovedFromGroup=Account removed from group -SaleLocal=Local sale -SaleExport=Export sale -SaleEEC=Sale in EEC +InitAccountancy=Инициализиране на счетоводство +InitAccountancyDesc=Тази страница може да се използва за инициализиране на счетоводна сметка за продукти и услуги, за които няма определена счетоводна сметка за продажби и покупки. +DefaultBindingDesc=Тази страница може да се използва за задаване на сметка по подразбиране, която да се използва за свързване на записи за транзакции на плащания на заплати, дарения, данъци и ДДС, когато все още не е зададена конкретна счетоводна сметка. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. +Options=Опции +OptionModeProductSell=Режим продажби +OptionModeProductSellIntra=Режим продажби, изнасяни в ЕИО +OptionModeProductSellExport=Режим продажби, изнасяни в други държави +OptionModeProductBuy=Режим покупки +OptionModeProductSellDesc=Показване на всички продукти със счетоводна сметка за продажби. +OptionModeProductSellIntraDesc=Показване на всички продукти със счетоводна сметка за продажби в ЕИО. +OptionModeProductSellExportDesc=Показване на всички продукти със счетоводна сметка за други чуждестранни продажби. +OptionModeProductBuyDesc=Показване на всички продукти със счетоводна сметка за покупки. +CleanFixHistory=Премахване на счетоводния код от редове, които не съществуват в сметкоплана +CleanHistory=Нулиране на всички връзки за избраната година +PredefinedGroups=Предварително определени групи +WithoutValidAccount=Без валидна специална сметка +WithValidAccount=С валидна специална сметка +ValueNotIntoChartOfAccount=Тази стойност на счетоводната сметка не съществува в сметкоплана +AccountRemovedFromGroup=Сметката е премахната от групата +SaleLocal=Локална продажба +SaleExport=Експортна продажба +SaleEEC=Вътреобщностна продажба ## Dictionary -Range=Range of accounting account -Calculated=Calculated -Formula=Formula +Range=Обхват на счетоводна сметка +Calculated=Изчислено +Formula=Формула ## Error -SomeMandatoryStepsOfSetupWereNotDone=Some mandatory steps of setup was not done, please complete them -ErrorNoAccountingCategoryForThisCountry=No accounting account group available for country %s (See Home - Setup - Dictionaries) -ErrorInvoiceContainsLinesNotYetBounded=You try to journalize some lines of the invoice %s, but some other lines are not yet bounded to accounting account. Journalization of all invoice lines for this invoice are refused. -ErrorInvoiceContainsLinesNotYetBoundedShort=Some lines on invoice are not bound to accounting account. -ExportNotSupported=The export format setuped is not supported into this page -BookeppingLineAlreayExists=Lines already existing into bookkeeping -NoJournalDefined=No journal defined -Binded=Lines bound -ToBind=Lines to bind -UseMenuToSetBindindManualy=Lines not yet bound, use menu %s to make the binding manually +SomeMandatoryStepsOfSetupWereNotDone=Някои задължителни стъпки за настройка не са направени, моля изпълнете ги. +ErrorNoAccountingCategoryForThisCountry=Няма налична група счетоводни сметки за държава %s (Вижте Начално -> Настройка -> Речници) +ErrorInvoiceContainsLinesNotYetBounded=Опитвате се да осчетоводите някои редове на фактура %s, но някои други редове все още не са свързани към счетоводна сметка. Осчетоводяването на всички редове във фактурата е отхвърлено. +ErrorInvoiceContainsLinesNotYetBoundedShort=Някои редове във фактурата не са свързани със счетоводна сметка. +ExportNotSupported=Настроеният формат за експортиране не се поддържа в тази страница +BookeppingLineAlreayExists=Вече съществуващи редове в счетоводството +NoJournalDefined=Няма определен журнал +Binded=Свързани редове +ToBind=Редове за свързване +UseMenuToSetBindindManualy=Редовете все още не са свързани, използвайте меню %s, за да направите връзката ръчно ## Import -ImportAccountingEntries=Accounting entries -DateExport=Date export -WarningReportNotReliable=Warning, this report is not based on the Ledger, so does not contains transaction modified manually in the Ledger. If your journalization is up to date, the bookkeeping view is more accurate. -ExpenseReportJournal=Expense Report Journal -InventoryJournal=Inventory Journal +ImportAccountingEntries=Счетоводни записи +DateExport=Дата на експортиране +WarningReportNotReliable=Внимание, тази справка не се основава на главната счетоводна книга, така че не съдържа транзакция, ръчно променена в книгата. Ако осчетоводяването ви е актуално, то прегледът на счетоводството е по-точен. +ExpenseReportJournal=Журнал за разходни отчети +InventoryJournal=Журнал за инвентар diff --git a/htdocs/langs/bg_BG/admin.lang b/htdocs/langs/bg_BG/admin.lang index 3e25a421f3f..5d854aba2ac 100644 --- a/htdocs/langs/bg_BG/admin.lang +++ b/htdocs/langs/bg_BG/admin.lang @@ -574,7 +574,7 @@ Module510Name=Заплати Module510Desc=Записване и проследяване на плащанията към служители Module520Name=Кредити Module520Desc=Управление на кредити -Module600Name=Известия +Module600Name=Notifications on business event Module600Desc=Изпращане на известия по имейл, предизвикани от дадено събитие: за потребител (настройка, определена за всеки потребител), за контакти на контрагенти (настройка, определена за всеки контрагент) или за определени имейли Module600Long=Имайте предвид, че този модул изпраща имейли в реално време, когато настъпи дадено събитие. Ако търсите функция за изпращане на напомняния по имейл за събития от календара отидете в настройката на модула Календар. Module610Name=Продуктови варианти @@ -672,7 +672,7 @@ Permission34=Изтриване на продукти Permission36=Преглед / управление на скрити продукти Permission38=Експортиране на продукти Permission41=Преглед на проекти и задачи (споделени проекти и проекти, в които съм определен за контакт). Въвеждане на отделено време, за служителя или неговите подчинени, по възложени задачи (График) -Permission42=Създаване / редактиране на проекти (споделени проекти и проекти, в които съм определен за контакт). Създаване на задачи и възлагане на проекти и задачи на потребители +Permission42=Създаване / променяне на проекти (споделени проекти и проекти, в които съм определен за контакт). Създаване на задачи и възлагане на проекти и задачи на потребители Permission44=Изтриване на проекти (споделени проекти и проекти, в които съм определен за контакт) Permission45=Експортиране на проекти Permission61=Преглед на интервенции @@ -715,12 +715,12 @@ Permission122=Създаване / промяна на контрагенти, Permission125=Изтриване на контрагенти, свързани с потребителя Permission126=Експортиране на контрагенти Permission141=Преглед на всички проекти и задачи (включително частни проекти, в които служителя не е определен за контакт) -Permission142=Създаване / редактиране на всички проекти и задачи (включително частни проекти, в които служителя не е определен за контакт) +Permission142=Създаване / променяне на всички проекти и задачи (включително частни проекти, в които служителя не е определен за контакт) Permission144=Изтриване на всички проекти и задачи (включително частни проекти, в които служителя не е определен за контакт) Permission146=Преглед на доставчици Permission147=Преглед на статистически данни Permission151=Преглед на платежни нареждания за директен дебит -Permission152=Създаване / редактиране на платежни нареждания за директен дебит +Permission152=Създаване / променяне на платежни нареждания за директен дебит Permission153=Изпращане / предаване на платежни нареждания за директен дебит Permission154=Записване на кредити / отхвърляния на платежни нареждания за директен дебит Permission161=Преглед на договори / абонаменти @@ -736,12 +736,12 @@ Permission174=Преглед на всички пътувания и разхо Permission178=Експортиране на пътувания и разходи Permission180=Преглед на доставчици Permission181=Преглед на поръчки за покупка -Permission182=Създаване / редактиране на поръчки за покупка +Permission182=Създаване / променяне на поръчки за покупка Permission183=Валидиране на поръчки за покупка Permission184=Одобряване на поръчки за покупка Permission185=Потвърждаване или анулиране на поръчки за покупка Permission186=Получаване на поръчки за покупка -Permission187=Затваряне на поръчки за покупка +Permission187=Приключване на поръчки за покупка Permission188=Анулиране на поръчки за покупка Permission192=Създаване на линии Permission193=Анулиране на линии @@ -770,7 +770,7 @@ Permission244=Преглед на съдържание на скрити кат Permission251=Преглед на други потребители и групи PermissionAdvanced251=Преглед на други потребители Permission252=Преглед на права на други потребители -Permission253=Създаване / редактиране на други потребители, групи и разрешения +Permission253=Създаване / променяне на други потребители, групи и разрешения PermissionAdvanced253=Създаване / промяна на вътрешни / външни потребители и права Permission254=Създаване / променя само на външни потребители Permission255=Промяна на парола на други потребители @@ -787,7 +787,7 @@ Permission291=Преглед на тарифи Permission292=Задаване на права за тарифи Permission293=Промяна на тарифите на клиента Permission300=Преглед на баркодове -Permission301=Създаване / редактиране на баркодове +Permission301=Създаване / променяне на баркодове Permission302=Изтриване на баркодове Permission311=Преглед на услуги Permission312=Възлагане на услуга / абонамент към договор @@ -809,7 +809,7 @@ Permission403=Валидиране на отстъпки Permission404=Изтриване на отстъпки Permission430=Използване на инструменти за отстраняване на грешки Permission511=Преглед на плащания на заплати -Permission512=Създаване / редактиране на плащания на заплати +Permission512=Създаване / променяне на плащания на заплати Permission514=Изтриване на плащания на заплати Permission517=Експортиране на заплати Permission520=Преглед на кредити @@ -852,7 +852,7 @@ Permission1125=Изтриване на запитвания към достав Permission1126=Приключване на запитвания към доставчици Permission1181=Преглед на доставчици Permission1182=Преглед на поръчки за покупка -Permission1183=Създаване / редактиране на поръчки за покупка +Permission1183=Създаване / променяне на поръчки за покупка Permission1184=Валидиране на поръчки за покупка Permission1185=Одобряване на поръчки за покупка Permission1186=Поръчка на поръчки за покупка @@ -862,7 +862,7 @@ Permission1190=Одобряване (второ одобрение) на пор Permission1201=Получава на резултат от експортиране Permission1202=Създаване / промяна на експортиране Permission1231=Преглед на фактури за доставка -Permission1232=Създаване / редактиране на фактури за доставка +Permission1232=Създаване / променяне на фактури за доставка Permission1233=Валидиране на фактури за доставка Permission1234=Изтриване на фактури за доставка Permission1235=Изпращане на фактури за доставка по имейл @@ -895,10 +895,10 @@ Permission10002=Създаване / Промяна на съдържание в Permission10003=Създаване / Промяна на съдържание в уебсайт (динамичен php код). Опасно, трябва да бъде използвано само за ограничен кръг разработчици. Permission10005=Изтриване на съдържание в уебсайт Permission20001=Преглед на молби за отпуск (на служителя и неговите подчинени) -Permission20002=Създаване / редактиране на молби за отпуск (на служителя и неговите подчинени) +Permission20002=Създаване / променяне на молби за отпуск (на служителя и неговите подчинени) Permission20003=Изтриване на молби за отпуск Permission20004=Преглед на всички молби за отпуск (дори на служители които не са подчинени на служителя) -Permission20005=Създаване / редактиране на всички молби за отпуск (дори на служители, които не са подчинени на служителя) +Permission20005=Създаване / променяне на всички молби за отпуск (дори на служители, които не са подчинени на служителя) Permission20006=Администриране на молби за отпуск (настройка и актуализиране на баланса) Permission23001=Преглед на планирани задачи Permission23002=Създаване / промяна на планирани задачи @@ -927,13 +927,13 @@ Permission59001=Преглед на търговски маржове Permission59002=Дефиниране на търговски маржове Permission59003=Преглед на всички потребителски маржове Permission63001=Преглед на ресурси -Permission63002=Създаване / редактиране на ресурси +Permission63002=Създаване / променяне на ресурси Permission63003=Изтриване на ресурси Permission63004=Свързване на ресурси към събития от календара DictionaryCompanyType=Видове контрагенти DictionaryCompanyJuridicalType=Правна форма на контрагенти DictionaryProspectLevel=Потенциал за перспектива -DictionaryCanton=Области / региони +DictionaryCanton=Области / Региони DictionaryRegion=Региони DictionaryCountry=Държави DictionaryCurrency=Валути @@ -1175,7 +1175,7 @@ ExternalAccess=Външен / Интернет достъп MAIN_PROXY_USE=Използване на прокси сървър (в противен случай достъпът към интернет е директен) MAIN_PROXY_HOST=Прокси сървър: Име / Адрес MAIN_PROXY_PORT=Прокси сървър: Порт -MAIN_PROXY_USER=Прокси сървър: Потребител +MAIN_PROXY_USER=Прокси сървър: Потребителско име MAIN_PROXY_PASS=Прокси сървър: Парола DefineHereComplementaryAttributes=Определете тук всички допълнителни / персонализирани атрибути, които искате да бъдат включени за: %s ExtraFields=Допълнителни атрибути @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Допълнителни атрибути (поръч ExtraFieldsSupplierInvoices=Допълнителни атрибути (фактури за покупка) ExtraFieldsProject=Допълнителни атрибути (проекти) ExtraFieldsProjectTask=Допълнителни атрибути (задачи) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Атрибут %s има грешна стойност. AlphaNumOnlyLowerCharsAndNoSpace=само буквено-цифрови символи с малки букви без интервал SendmailOptionNotComplete=Внимание, в някои Linux системи, за да изпращате имейли от вашият имейл, в настройката на Sendmail трябва да имате опция -ba (параметър mail.force_extra_parameters във вашия php.ini файл). Ако някои получатели никога не получават имейли, опитайте да промените този PHP параметър на mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Съхраняването на сесии е кодира ConditionIsCurrently=Понастоящем състоянието е %s YouUseBestDriver=Използвате драйвер %s, който е най-добрият драйвер в момента. YouDoNotUseBestDriver=Използвате драйвер %s, но драйвер %s е препоръчителен. -NbOfProductIsLowerThanNoPb=Вие имате само %s продукти / услуги в базата данни. Това не изисква специално оптимизиране. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Оптимизация на търсене -YouHaveXProductUseSearchOptim=В базата данни имате %s продукти. Трябва да добавите константата PRODUCT_DONOTSEARCH_ANYWHERE със стойност "1" в страницата Начало - Настройки - Други настройки. Ограничете търсенето до началото на низове, което позволява базата данни да използва индекси, а вие да получите незабавен отговор. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Използвате уеб браузъра %s. Този браузър е добър от гледна точка на сигурност и производителност. BrowserIsKO=Използвате уеб браузъра %s. Известно е, че този браузър е лош избор от гледна точка на сигурност, производителност и надеждност. Препоръчително е да използвате Firefox, Chrome, Opera или Safari. -XDebugInstalled=XDebug е зареден. -XCacheInstalled=XCache е зареден. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Показване на кода на клиента / доставчика в списъка (select list или combobox) и повечето от хипервръзките.
Контрагентите ще се появят с формат на името "CC12345 - SC45678 - Голяма фирма ЕООД", вместо "Голяма фирма ЕООД" AddAdressInList=Показване на списъка с информация за адреса на клиента / доставчика (изборен списък или комбиниран списък).
Контрагентите ще се появят с формат на името на "Голяма фирма ЕООД - ул. Първа № 2 П. код Град - България, вместо "Голяма фирма ЕООД" AskForPreferredShippingMethod=Запитване към контрагенти за предпочитан начин на доставка @@ -1570,10 +1572,10 @@ AdvancedEditor=Разширен редактор ActivateFCKeditor=Активиране на разширен редактор за: FCKeditorForCompany=WYSIWIG създаване / промяна на описание на елементите и бележки (с изключение на продукти / услуги) FCKeditorForProduct=WYSIWIG създаване / промяна на описание на продукти / услуги -FCKeditorForProductDetails=WYSIWIG създаване / редактиране на продуктови редове за всички обекти (предложения, поръчки, фактури и др.). Внимание: Използването на тази опция не се препоръчва, тъй като може да създаде проблеми с някои специални символи и при форматиране на страниците, по време на генериране на PDF файловете. +FCKeditorForProductDetails=WYSIWIG създаване / променяне на продуктови редове за всички обекти (предложения, поръчки, фактури и др.). Внимание: Използването на тази опция не се препоръчва, тъй като може да създаде проблеми с някои специални символи и при форматиране на страниците, по време на генериране на PDF файловете. FCKeditorForMailing= WYSIWIG създаване / промяна на масови имейли (Инструменти -> Масови имейли) FCKeditorForUserSignature=WYSIWIG създаване / промяна на подпис на потребители -FCKeditorForMail=WYSIWIG създаване / редактиране на цялата поща (с изключение на Настройки - Електронна поща) +FCKeditorForMail=WYSIWIG създаване / променяне на цялата поща (с изключение на Настройка -> Имейли) ##### Stock ##### StockSetup=Настройка на модул Наличности IfYouUsePointOfSaleCheckModule=Ако използвате модула Точка за продажби (POS), предоставен по подразбиране или чрез външен модул, тази настройка може да бъде игнорирана от вашия POS модул. Повечето POS модули по подразбиране са разработени да създават веднага фактура, след което да намаляват наличностите, независимо от опциите тук. В случай, че имате нужда или не от автоматично намаляване на наличностите при регистриране на продажба от POS проверете и настройката на вашия POS модул. @@ -1711,7 +1713,7 @@ AccountingPeriods=Счетоводни периоди AccountingPeriodCard=Счетоводен период NewFiscalYear=Нов счетоводен период OpenFiscalYear=Отваряне на счетоводен период -CloseFiscalYear=Затваряне на счетоводен период +CloseFiscalYear=Приключване на счетоводен период DeleteFiscalYear=Изтриване на счетоводен период ConfirmDeleteFiscalYear=Сигурни ли сте, че искате да изтриете този счетоводен период? ShowFiscalYear=Преглед на счетоводен период @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Настройка на модул Разходни о ExpenseReportNumberingModules=Модул за номериране на разходни отчети NoModueToManageStockIncrease=Не е активиран модул, способен да управлява автоматичното увеличаване на наличности. Увеличаването на наличности ще се извършва само при ръчно въвеждане. YouMayFindNotificationsFeaturesIntoModuleNotification=Може да откриете опции за известия по имейл като активирате и конфигурирате модула "Известия". -ListOfNotificationsPerUser=Списък с известия за потребител* -ListOfNotificationsPerUserOrContact=Списък с известия (събития), налични за потребител* или за контакт** -ListOfFixedNotifications=Списък с фиксирани известия +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Отидете в раздела „Известия“ на съответния потребител, за да добавите или премахнете известия за този потребител GoOntoContactCardToAddMore=Отидете в раздела „Известия“ на съответния контрагент, за да добавите или премахнете известия за съответните контакти / адреси Threshold=Граница @@ -1768,7 +1770,7 @@ ColorFormat=RGB цвета е в HEX формат, например: FF0000 PositionIntoComboList=Позиция на реда в комбинирани списъци SellTaxRate=Ставка на данъка върху продажби RecuperableOnly=Да за ДДС "Не възприеман, но възстановим", предназначен за някои области във Франция. Запазете стойността "Не" във всички останали случаи. -UrlTrackingDesc=Ако доставчикът или транспортната услуга предлага страница или уеб сайт за проверка на статуса на вашите пратки, то може да ги въведете тук. Може да използвате ключа {TRACKID} в URL параметрите, така че системата да го замени с проследяващия номер, който потребителят е въвел в картата на пратката. +UrlTrackingDesc=Ако доставчикът или транспортната услуга предлага страница или уеб сайт за проверка на статуса на вашите пратки, то може да ги въведете тук. Може да използвате ключа {TRACKID} в URL параметрите, така че системата да го замени с проследяващия номер, който потребителят е въвел в картата на доставката. OpportunityPercent=Когато създавате нова възможност определяте приблизително очакваната сума от проекта / възможността. Според статуса на възможността тази сума ще бъде умножена по определения му процент, за да се оцени общата сума, която всичките ви възможности могат да генерират. Стойността е в проценти (между 0 и 100). TemplateForElement=Този шаблон е специализиран за елемент TypeOfTemplate=Тип шаблон @@ -1898,6 +1900,11 @@ OnMobileOnly=Само при малък екран (смартфон) DisableProspectCustomerType=Деактивиране на типа контрагент "Перспектива + Клиент" (контрагента трябва да бъде Перспектива или Клиент, но не може да бъде и двете) MAIN_OPTIMIZEFORTEXTBROWSER=Опростяване на интерфейса за незрящ човек MAIN_OPTIMIZEFORTEXTBROWSERDesc=Активирайте тази опция за незрящ човек или ако използвате приложението от текстов браузър като Lynx или Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Тази стойност може да бъде променена от профила на всеки потребител в раздела '%s' DefaultCustomerType=Тип контрагент по подразбиране във формуляра за създаване на "Нов клиент" ABankAccountMustBeDefinedOnPaymentModeSetup=Забележка: Банковата сметка трябва да бъде дефинирана в модула за всеки режим на плащане (Paypal, Stripe, ...), за да работи тази функция. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Брой редове, които да се показват в UseDebugBar=Използване на инструменти за отстраняване на грешки DEBUGBAR_LOGS_LINES_NUMBER=Брой последни редове на журнал, които да се пазят в конзолата WarningValueHigherSlowsDramaticalyOutput=Внимание, по-високите стойности забавят драматично производителността -DebugBarModuleActivated=Модула "Инструменти за отстраняване на грешки" е активиран и забавя драматично интерфейса +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Моделите за експортиране се споделят с всички ExportSetup=Настройка на модула Експортиране на данни InstanceUniqueID=Уникален идентификатор на инстанцията @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=Ще го намерите във вашият I EndPointFor=Крайна точка за %s: %s DeleteEmailCollector=Изтриване на имейл колекционер ConfirmDeleteEmailCollector=Сигурни ли те, че искате да изтриете този колекционер на имейли? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/bg_BG/agenda.lang b/htdocs/langs/bg_BG/agenda.lang index 74975f5a6e7..caeb1f309a4 100644 --- a/htdocs/langs/bg_BG/agenda.lang +++ b/htdocs/langs/bg_BG/agenda.lang @@ -58,11 +58,11 @@ MemberDeletedInDolibarr=Член %s е изтрит MemberSubscriptionAddedInDolibarr=Членски внос %s за член %s е добавен MemberSubscriptionModifiedInDolibarr=Членски внос %s за член %s е променен MemberSubscriptionDeletedInDolibarr=Членски внос %s за член %s е изтрит -ShipmentValidatedInDolibarr=Пратка %s е валидирана -ShipmentClassifyClosedInDolibarr=Пратка %s е фактурирана -ShipmentUnClassifyCloseddInDolibarr=Пратка %s е повторно отворена -ShipmentBackToDraftInDolibarr=Пратка %s е върната в статус чернова -ShipmentDeletedInDolibarr=Пратка %s е изтрита +ShipmentValidatedInDolibarr=Доставка %s е валидирана +ShipmentClassifyClosedInDolibarr=Доставка %s е фактурирана +ShipmentUnClassifyCloseddInDolibarr=Доставка %s е повторно отворена +ShipmentBackToDraftInDolibarr=Доставка %s е върната в статус чернова +ShipmentDeletedInDolibarr=Доставка %s е изтрита OrderCreatedInDolibarr=Поръчка %s е създадена OrderValidatedInDolibarr=Поръчка %s е валидирана OrderDeliveredInDolibarr=Поръчка %s е класифицирана като доставена @@ -77,8 +77,8 @@ OrderSentByEMail=Клиентска поръчка %s е изпратена по InvoiceSentByEMail=Фактура за продажба %s е изпратена по имейл SupplierOrderSentByEMail=Поръчка за покупка %s е изпратена по имейл SupplierInvoiceSentByEMail=Фактура за покупка %s е изпратена по имейл -ShippingSentByEMail=Пратка %s е изпратена по имейл -ShippingValidated= Пратка %s е валидирана +ShippingSentByEMail=Доставка %s е изпратена по имейл +ShippingValidated= Доставка %s е валидирана InterventionSentByEMail=Интервенция %s е изпратена по имейл ProposalDeleted=Предложението е изтрито OrderDeleted=Поръчката е изтрита diff --git a/htdocs/langs/bg_BG/assets.lang b/htdocs/langs/bg_BG/assets.lang index f851bd810d3..aabd6c6e46c 100644 --- a/htdocs/langs/bg_BG/assets.lang +++ b/htdocs/langs/bg_BG/assets.lang @@ -22,7 +22,7 @@ AccountancyCodeAsset = Счетоводен код (актив) AccountancyCodeDepreciationAsset = Счетоводен код (сметка за амортизационни активи) AccountancyCodeDepreciationExpense = Счетоводен код (сметка за амортизационни разходи) NewAssetType=Нов вид актив -AssetsTypeSetup=Настройка на тип активи +AssetsTypeSetup=Настройка на вид активи AssetTypeModified=Видът на актива е променен AssetType=Вид актив AssetsLines=Активи @@ -42,17 +42,17 @@ ModuleAssetsDesc = Описание на активи AssetsSetup = Настройка на активи Settings = Настройки AssetsSetupPage = Страница за настройка на активите -ExtraFieldsAssetsType = Допълнителни атрибути (Вид на актива) +ExtraFieldsAssetsType = Допълнителни атрибути (вид актив) AssetsType=Вид актив -AssetsTypeId=№ на актива -AssetsTypeLabel=Вид актив етикет +AssetsTypeId=Идентификатор на вида актива +AssetsTypeLabel=Етикет на вида актив AssetsTypes=Видове активи # # Menu # MenuAssets = Активи -MenuNewAsset = Нов Актив +MenuNewAsset = Нов актив MenuTypeAssets = Вид активи MenuListAssets = Списък MenuNewTypeAssets = Нов diff --git a/htdocs/langs/bg_BG/bills.lang b/htdocs/langs/bg_BG/bills.lang index cd16caffcc6..67960e29678 100644 --- a/htdocs/langs/bg_BG/bills.lang +++ b/htdocs/langs/bg_BG/bills.lang @@ -9,8 +9,8 @@ BillsCustomersUnpaidForCompany=Неплатени фактури за прода BillsSuppliersUnpaid=Неплатени фактури за доставка BillsSuppliersUnpaidForCompany=Неплатени фактури за доставка за %s BillsLate=Забавени плащания -BillsStatistics=Статистика от фактури за продажба -BillsStatisticsSuppliers=Статистика за фактури на доставка +BillsStatistics=Статистика на фактури за продажба +BillsStatisticsSuppliers=Статистика на фактури за доставка DisabledBecauseDispatchedInBookkeeping=Деактивирано, защото фактурата е изпратена за осчетоводяване DisabledBecauseNotLastInvoice=Деактивирано, защото фактурата не може да се изтрие. Има регистрирани следващи фактури с поредни номера и това ще създаде дупки в брояча. DisabledBecauseNotErasable=Деактивирано, защото не може да бъде изтрито @@ -22,7 +22,7 @@ InvoiceDepositAsk=Фактура за авансово плащане InvoiceDepositDesc=Този вид фактура се използва, когато е получено авансово плащане. InvoiceProForma=Проформа фактура InvoiceProFormaAsk=Проформа фактура -InvoiceProFormaDesc=Проформа фактура е първообраз на една истинска фактура, но няма счетоводна стойност. +InvoiceProFormaDesc=Проформа фактурата е първообраз на истинска фактура, но няма счетоводна стойност. InvoiceReplacement=Заменяща фактура InvoiceReplacementAsk=Фактура заменяща друга фактура InvoiceReplacementDesc=Заменяща фактура се използва за анулиране и пълно заменяне на фактура без получено плащане.

Забележка: Само фактури без плащания по тях могат да бъдат заменяни. Ако фактурата, която заменяте, все още не е приключена, то тя ще бъде автоматично приключена като „Изоставена“. @@ -44,7 +44,7 @@ NotConsumed=Не е консумирана NoReplacableInvoice=Няма заменими фактури NoInvoiceToCorrect=Няма фактура за коригиране InvoiceHasAvoir=Източник на едно или няколко кредитни известия -CardBill=Карта на фактура +CardBill=Карта PredefinedInvoices=Предварително дефинирани фактури Invoice=Фактура PdfInvoiceTitle=Фактура @@ -75,8 +75,8 @@ ReceivedPayments=Получени плащания ReceivedCustomersPayments=Плащания получени от клиенти PayedSuppliersPayments=Направени плащания към доставчици ReceivedCustomersPaymentsToValid=Получени плащания от клиенти за валидиране -PaymentsReportsForYear=Отчети за плащания за %s -PaymentsReports=Отчети за плащания +PaymentsReportsForYear=Справки за плащания за %s +PaymentsReports=Справки за плащания PaymentsAlreadyDone=Вече направени плащания PaymentsBackAlreadyDone=Вече направени обратни плащания PaymentRule=Правило за плащане @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Плащането е с по-висока сто HelpPaymentHigherThanReminderToPay=Внимание, сумата за плащане на една или повече фактури е по-висока от дължимата сума за плащане.
Редактирайте записа си, в противен случай потвърдете и обмислете създаването на кредитно известие за получената сума за всяка надплатена фактура. HelpPaymentHigherThanReminderToPaySupplier=Внимание, сумата за плащане на една или повече фактури е по-висока от дължимата сума за плащане.
Редактирайте записа си, в противен случай потвърдете и обмислете създаването на кредитно известие за излишъка, платен за всяка надплатена фактура. ClassifyPaid=Класифициране като 'Платена' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Класифициране като 'Частично платена' ClassifyCanceled=Класифициране като 'Изоставена' ClassifyClosed=Класифициране като 'Приключена' @@ -150,21 +151,21 @@ ErrorBillNotFound=Фактура %s не съществува ErrorInvoiceAlreadyReplaced=Грешка, опитахте да валидирате фактура, за да замените фактура %s, но тя вече е заменена с фактура %s. ErrorDiscountAlreadyUsed=Грешка, вече се използва отстъпка ErrorInvoiceAvoirMustBeNegative=Грешка, коригиращата фактура трябва да има отрицателна сума -ErrorInvoiceOfThisTypeMustBePositive=Грешка, този тип фактура трябва да има положителна стойност +ErrorInvoiceOfThisTypeMustBePositive=Грешка, този тип фактура трябва да има положителна сума ErrorCantCancelIfReplacementInvoiceNotValidated=Грешка, не може да се анулира фактура, която е била заменена от друга фактура, която все още е в състояние на чернова ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=Тази или друга част вече е използвана, така че сериите с отстъпки не могат да бъдат премахнати. BillFrom=От BillTo=За -ActionsOnBill=Действия по фактура +ActionsOnBill=Свързани събития RecurringInvoiceTemplate=Шаблонна / Повтаряща се фактура NoQualifiedRecurringInvoiceTemplateFound=Няма шаблонна повтаряща се фактура за генериране FoundXQualifiedRecurringInvoiceTemplate=Намерени са %s шаблонни повтарящи се фактури, отговарящи на изискванията за генериране. NotARecurringInvoiceTemplate=Не е шаблонна повтаряща се фактура NewBill=Нова фактура LastBills=Фактури: %s последни -LatestTemplateInvoices=Шаблонни повтарящи се фактури: %s последни -LatestCustomerTemplateInvoices=Шаблонни повтарящи се фактури за продажба: %s последни -LatestSupplierTemplateInvoices=Шаблонни повтарящи се фактури за доставка: %s последни +LatestTemplateInvoices=Шаблонни фактури: %s последни +LatestCustomerTemplateInvoices=Шаблонни фактури за продажба: %s последни +LatestSupplierTemplateInvoices=Шаблонни фактури за доставка: %s последни LastCustomersBills=Фактури за продажба: %s последни LastSuppliersBills=Фактури за доставка: %s последни AllBills=Всички фактури @@ -173,14 +174,14 @@ OtherBills=Други фактури DraftBills=Чернови фактури CustomersDraftInvoices=Чернови фактури за продажба SuppliersDraftInvoices=Чернови фактури за доставка -Unpaid=Неплатено +Unpaid=Неплатена ConfirmDeleteBill=Сигурни ли сте, че искате да изтриете тази фактура? ConfirmValidateBill=Сигурни ли сте че, искате да валидирате тази фактура %s ? ConfirmUnvalidateBill=Сигурен ли сте, че искате да върнете фактура %s в състояние на чернова? -ConfirmClassifyPaidBill=Сигурни ли сте че, искате да маркирате фактура %s със статус платена? +ConfirmClassifyPaidBill=Сигурни ли сте че, искате да класифицирате фактура %s като платена? ConfirmCancelBill=Сигурни ли сте, че искате да анулирате фактура %s ? ConfirmCancelBillQuestion=Защо искате да класифицирате тази фактура като „Изоставена“? -ConfirmClassifyPaidPartially=Сигурни ли сте че, искате да маркирате фактура %s със статус платена? +ConfirmClassifyPaidPartially=Сигурни ли сте че, искате да класифицирате фактура %s като платена частично? ConfirmClassifyPaidPartiallyQuestion=Тази фактура не е платена изцяло. Каква е причината за приключване на тази фактура? ConfirmClassifyPaidPartiallyReasonAvoir=Неплатения остатък (%s %s) е предоставена отстъпка, тъй като плащането е извършено преди срока за плащане. Уреждам ДДС с кредитно известие. ConfirmClassifyPaidPartiallyReasonDiscount=Неплатения остатък (%s %s) е предоставена отстъпка, тъй като плащането е извършено преди срока за плащане. @@ -192,7 +193,7 @@ ConfirmClassifyPaidPartiallyReasonOther=Сумата е изоставена п ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=Този избор е възможен, ако фактурата е снабдена с подходящи коментари. (Например: "Само данък, съответстващ на действително платената цена, дава право на приспадане") ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=В някои държави този избор е възможен, само ако фактурата съдържа правилни бележки. ConfirmClassifyPaidPartiallyReasonAvoirDesc=Използвайте този избор, ако всички други не са подходящи -ConfirmClassifyPaidPartiallyReasonBadCustomerDesc= Лош клиент е клиент, който отказва да плати дълга си. +ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=Лош клиент е клиент, който отказва да плати дълга си. ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=Този избор се използва, когато плащането не е пълно, тъй като някои от продуктите са били върнати ConfirmClassifyPaidPartiallyReasonOtherDesc=Използвайте този избор, ако всички останали не са подходящи, например в следната ситуация:\n- плащането не е завършено, защото някои продукти са изпратени обратно\n- предявената сума е задължителна, понеже отстъпката е забравена\nВъв всички случаи, надхвърлената сума трябва да бъде коригирана в счетоводната система, чрез създаване на кредитно известие. ConfirmClassifyAbandonReasonOther=Друго @@ -206,22 +207,36 @@ NumberOfBills=Брой фактури NumberOfBillsByMonth=Брой фактури на месец AmountOfBills=Сума на фактури AmountOfBillsHT=Сума на фактури (без ДДС) -AmountOfBillsByMonthHT=Сума на фактури по месец (без данък) +AmountOfBillsByMonthHT=Сума на фактури по месец (без ДДС) ShowSocialContribution=Показване на социален / фискален данък -ShowBill=Покажи фактура -ShowInvoice=Покажи фактура -ShowInvoiceReplace=Покажи заменяща фактура -ShowInvoiceAvoir=Покажи кредитно известие +ShowBill=Показване на фактура +ShowInvoice=Показване на фактура +ShowInvoiceReplace=Показване на заменяща фактура +ShowInvoiceAvoir=Показване на кредитно известие ShowInvoiceDeposit=Показване на авансова фактура ShowInvoiceSituation=Показване на ситуационна фактура -ShowPayment=Покажи плащане +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF +ShowPayment=Показване на плащане AlreadyPaid=Вече платено AlreadyPaidBack=Вече платено обратно AlreadyPaidNoCreditNotesNoDeposits=Вече платено (без кредитни известия и авансови плащания) Abandoned=Изоставена RemainderToPay=Неплатен остатък RemainderToTake=Остатъчна сума за получаване -RemainderToPayBack=Оставаща сума за възстановяване +RemainderToPayBack=Остатъчна сума за възстановяване Rest=Чакаща AmountExpected=Претендирана сума ExcessReceived=Получено превишение @@ -230,7 +245,7 @@ EscompteOffered=Предложена отстъпка (плащане преди EscompteOfferedShort=Отстъпка SendBillRef=Изпращане на фактура %s SendReminderBillRef=Изпращане на фактура %s (напомняне) -StandingOrders=Нареждания с директен дебит +StandingOrders=Нареждания за директен дебит StandingOrder=Нареждане за директен дебит NoDraftBills=Няма чернови фактури NoOtherDraftBills=Няма други чернови фактури @@ -263,11 +278,11 @@ Repeatables=Шаблони ChangeIntoRepeatableInvoice=Конвертиране в шаблонна фактура CreateRepeatableInvoice=Създаване на шаблонна фактура CreateFromRepeatableInvoice=Създаване от шаблонна фактура -CustomersInvoicesAndInvoiceLines=Фактури клиенти и техните детайли +CustomersInvoicesAndInvoiceLines=Фактури за продажба и техни детайли CustomersInvoicesAndPayments=Фактури за продажба и плащания -ExportDataset_invoice_1=Фактури за продажба и техните детайли +ExportDataset_invoice_1=Фактури за продажба и техни детайли ExportDataset_invoice_2=Фактури за продажба и плащания -ProformaBill=Проформа Фактура +ProformaBill=Проформа фактура Reduction=Отстъпка ReductionShort=Отст. Reductions=Отстъпки @@ -279,8 +294,8 @@ EditRelativeDiscount=Промяна на относителна отстъпка AddGlobalDiscount=Създаване на абсолютна отстъпка EditGlobalDiscounts=Промяна на абсолютна отстъпка AddCreditNote=Създаване на кредитно известие -ShowDiscount=Покажи отстъпка -ShowReduc=Покажи намалението +ShowDiscount=Показване на отстъпка +ShowReduc=Показване на отстъпка RelativeDiscount=Относителна отстъпка GlobalDiscount=Глобална отстъпка CreditNote=Кредитно известие @@ -292,8 +307,8 @@ DiscountFromCreditNote=Отстъпка от кредитно известие % DiscountFromDeposit=Авансови плащания от фактура %s DiscountFromExcessReceived=Плащания над стойността на фактура %s DiscountFromExcessPaid=Плащания над стойността на фактура %s -AbsoluteDiscountUse=Този вид кредит може да се използва по фактура преди нейното валидиране -CreditNoteDepositUse=Фактурата трябва да бъде валидирана, за да се използва този вид кредити +AbsoluteDiscountUse=Този вид кредит може да се използва във фактура преди нейното валидиране +CreditNoteDepositUse=Фактурата трябва да бъде валидирана, за да използвате този вид кредити NewGlobalDiscount=Нова абсолютна отстъпка NewRelativeDiscount=Нова относителна отстъпка DiscountType=Тип отстъпка @@ -303,15 +318,15 @@ DiscountOfferedBy=Предоставена от DiscountStillRemaining=Налични отстъпки или кредити DiscountAlreadyCounted=Изразходвани отстъпки или кредити CustomerDiscounts=Отстъпки за клиенти -SupplierDiscounts=Отстъпки на доставчици +SupplierDiscounts=Отстъпки от доставчици BillAddress=Адрес за фактуриране HelpEscompte=Тази отстъпка представлява отстъпка, предоставена на клиента, тъй като плащането е извършено преди срока на плащане. HelpAbandonBadCustomer=Тази сума е изоставена (поради некоректен (лош) клиент) и се счита за изключителна загуба. -HelpAbandonOther=Тази сума е изоставена, тъй като е била грешка (Например: неправилен клиент или фактура заменена от друга) +HelpAbandonOther=Тази сума е изоставена, тъй като се дължи на грешка (например: неправилен клиент или фактура заменена от друга) IdSocialContribution=Идентификатор за плащане на социален / фискален данък -PaymentId=Плащане ID +PaymentId=Идентификатор за плащане PaymentRef=Реф. плащане -InvoiceId=Фактура ID +InvoiceId=Идентификатор на фактура InvoiceRef=Реф. фактура InvoiceDateCreation=Дата на създаване на фактура InvoiceStatus=Статус на фактура @@ -327,7 +342,7 @@ ConfirmCloneInvoice=Сигурни ли сте, че искате да клон DisabledBecauseReplacedInvoice=Действието е деактивирано, тъй като фактурата е била заменена DescTaxAndDividendsArea=Тази секция показва обобщение на всички плащания, направени за специални разходи. Тук са включени само записи с плащания през определената година. NbOfPayments=Брой плащания -SplitDiscount=Раздели отстъпката на две +SplitDiscount=Разделяне на отстъпка ConfirmSplitDiscount=Сигурни ли сте, че искате да разделите тази отстъпка %s %s на две по-малки отстъпки? TypeAmountOfEachNewDiscount=Въведете сума за всяка от двете части: TotalOfTwoDiscountMustEqualsOriginal=Общата сума на двете нови отстъпки трябва да бъде равна на първоначалната сума за отстъпка. @@ -340,7 +355,7 @@ LatestRelatedBill=Последна свързана фактура WarningBillExist=Внимание, вече съществуват една или повече фактури MergingPDFTool=Инструмент за обединяване на PDF документи AmountPaymentDistributedOnInvoice=Сума на плащане, разпределена по фактура -PaymentOnDifferentThirdBills=Позволява плащания по различни фактури на контрагенти, но от едно и също дружество (фирма майка) +PaymentOnDifferentThirdBills=Позволяване на плащания по различни фактури на контрагенти, но от едно и също дружество (фирма майка) PaymentNote=Бележка за плащане ListOfPreviousSituationInvoices=Списък на предишни ситуационни фактури ListOfNextSituationInvoices=Списък на следващи ситуационни фактури @@ -373,7 +388,7 @@ WarningInvoiceDateTooFarInFuture=Внимание, датата на факту ViewAvailableGlobalDiscounts=Преглед на налични отстъпки # PaymentConditions Statut=Статус -PaymentConditionShortRECEP=При получаване +PaymentConditionShortRECEP=Получаване PaymentConditionRECEP=При получаване PaymentConditionShort30D=30 дни PaymentCondition30D=30 дни @@ -399,7 +414,7 @@ PaymentConditionShort14DENDMONTH=14 дни от края на месеца PaymentCondition14DENDMONTH=В рамките на 14 дни след края на месеца FixAmount=Фиксирана сума VarAmount=Променлива сума (%% общо) -VarAmountOneLine=Променлива сума (%% общ.) - 1 ред с етикет "%s" +VarAmountOneLine=Променлива сума (%% общо) - включва ред с етикет "%s" # PaymentType PaymentTypeVIR=Банков превод PaymentTypeShortVIR=Банков превод @@ -415,27 +430,27 @@ PaymentTypeTIP=TIP (Документи срещу плащане) PaymentTypeShortTIP=Плащане по TIP PaymentTypeVAD=Онлайн плащане PaymentTypeShortVAD=Онлайн плащане -PaymentTypeTRA=Банково извлечение -PaymentTypeShortTRA=Чернова +PaymentTypeTRA=Банкова гаранция +PaymentTypeShortTRA=Гаранция PaymentTypeFAC=Фактор PaymentTypeShortFAC=Фактор BankDetails=Банкови данни BankCode=Банков код DeskCode=Код на клон BankAccountNumber=Номер на сметка -BankAccountNumberKey=Контролната сума +BankAccountNumberKey=Контролна сума Residence=Адрес IBANNumber=IBAN номер на сметка IBAN=IBAN BIC=BIC / SWIFT -BICNumber=BIC/SWIFT код +BICNumber=BIC / SWIFT код ExtraInfos=Допълнителна информация RegulatedOn=Регулирано на ChequeNumber=Чек № ChequeOrTransferNumber=Чек / Трансфер № ChequeBordereau=Чек график -ChequeMaker=Чек/трансфер предавател -ChequeBank=Банка на чека +ChequeMaker=Подател на чек / трансфер +ChequeBank=Банка на чек CheckBank=Чек NetToBePaid=Нето за плащане PhoneNumber=Тел @@ -443,17 +458,17 @@ FullPhoneNumber=Телефон TeleFax=Факс PrettyLittleSentence=Приемене на размера на плащанията с чекове, издадени в мое име, като член на счетоводна асоциация, одобрена от данъчната администрация. IntracommunityVATNumber=ДДС № -PaymentByChequeOrderedTo=Чекови плащания (с ДДС) се извършват до %s, изпратени на адрес +PaymentByChequeOrderedTo=Чекови плащания (с ДДС) се извършват до %s, изпратени на PaymentByChequeOrderedToShort=Чекови плащания (с ДДС) се извършват до SendTo=изпратено до PaymentByTransferOnThisBankAccount=Плащане, чрез превод по следната банкова сметка VATIsNotUsedForInvoice=* Неприложим ДДС, art-293B от CGI -LawApplicationPart1=Чрез прилагането на закон 80.335 от 12/05/80 +LawApplicationPart1=Чрез прилагане на закон 80.335 от 12/05/80 LawApplicationPart2=стоките остават собственост на LawApplicationPart3=продавача до пълното плащане на LawApplicationPart4=тяхната цена. LimitedLiabilityCompanyCapital=SARL с капитал от -UseLine=Приложи +UseLine=Прилагане UseDiscount=Използване на отстъпка UseCredit=Използване на кредит UseCreditNoteInInvoicePayment=Намаляване на сумата за плащане с този кредит @@ -468,12 +483,12 @@ Cheques=Чекове DepositId=Идентификатор на депозит NbCheque=Брой чекове CreditNoteConvertedIntoDiscount=Това %s е преобразувано в %s -UsBillingContactAsIncoiveRecipientIfExist=Използване на контакт/адрес с тип "контакт за фактуриране" вместо адрес на контрагента като получател на фактури -ShowUnpaidAll=Покажи всички неплатени фактури -ShowUnpaidLateOnly=Покажи само забавените неплатени фактури +UsBillingContactAsIncoiveRecipientIfExist=Използване на контакт / адрес с тип "контакт за фактуриране" вместо адрес на контрагента като получател на фактури +ShowUnpaidAll=Показване на всички неплатени фактури +ShowUnpaidLateOnly=Показване на забавени неплатени фактури PaymentInvoiceRef=Плащане по фактура %s ValidateInvoice=Валидиране на фактура -ValidateInvoices=Потвърждаване на фактури +ValidateInvoices=Валидиране на фактури Cash=В брой Reported=Закъснели DisabledBecausePayments=Не е възможно, тъй като има някои плащания @@ -482,7 +497,7 @@ ExpectedToPay=Очаквано плащане CantRemoveConciliatedPayment=Съгласуваното плащане не може да се премахне PayedByThisPayment=Платено от това плащане ClosePaidInvoicesAutomatically=Класифицирайте "Платени" всички стандартни, авансови или заместващи фактури, които са платени напълно. -ClosePaidCreditNotesAutomatically=Класифицирай 'Платени' всички кредитни известия, които са изцяло платени обратно. +ClosePaidCreditNotesAutomatically=Класифицирайте "Платени" всички кредитни известия, които са изцяло платени обратно. ClosePaidContributionsAutomatically=Класифицирайте "Платени" всички социални или фискални вноски, които са платени напълно. AllCompletelyPayedInvoiceWillBeClosed=Всички фактури без остатък за плащане ще бъдат автоматично приключени със статус "Платени". ToMakePayment=Плати @@ -506,9 +521,9 @@ TypeContact_facture_external_BILLING=Контакт по фактура за п TypeContact_facture_external_SHIPPING=Контакт по доставка TypeContact_facture_external_SERVICE=Контакт по обслужване TypeContact_invoice_supplier_internal_SALESREPFOLL=Представител по фактура за покупка -TypeContact_invoice_supplier_external_BILLING=Контакт на доставчик по фактура -TypeContact_invoice_supplier_external_SHIPPING=Контакт на доставчик по доставка -TypeContact_invoice_supplier_external_SERVICE=Контакт на доставчик по услуга +TypeContact_invoice_supplier_external_BILLING=Контакт по фактура за доставка +TypeContact_invoice_supplier_external_SHIPPING=Контакт по доставка +TypeContact_invoice_supplier_external_SERVICE=Контакт по обслужване # Situation invoices InvoiceFirstSituationAsk=Първа ситуационна фактура InvoiceFirstSituationDesc=Ситуационните фактури са вързани към ситуации отнасящи се до прогрес, например процес на конструиране. Всяка ситуация е свързана с една фактура. @@ -542,7 +557,7 @@ ToCreateARecurringInvoiceGene=За да генерирате бъдещи фак ToCreateARecurringInvoiceGeneAuto=Ако трябва да генерирате такива фактури автоматично, помолете администратора да активира и настрои модула %s . Имайте предвид, че двата метода (ръчен и автоматичен) могат да се използват заедно, без риск от дублиране. DeleteRepeatableInvoice=Изтриване на шаблонна фактура ConfirmDeleteRepeatableInvoice=Сигурни ли сте, че искате да изтриете тази шаблонна фактура? -CreateOneBillByThird=Създайте по една фактура за контрагент (в противен случай по фактура за поръчка) +CreateOneBillByThird=Създаване на една фактура за контрагент (в противен случай по една фактура за поръчка) BillCreated=Създадени са %s фактури StatusOfGeneratedDocuments=Статус на генерираните документи DoNotGenerateDoc=Не генерирайте файл за документа diff --git a/htdocs/langs/bg_BG/blockedlog.lang b/htdocs/langs/bg_BG/blockedlog.lang index 1975a28d3ed..eaf5afb0924 100644 --- a/htdocs/langs/bg_BG/blockedlog.lang +++ b/htdocs/langs/bg_BG/blockedlog.lang @@ -1,5 +1,5 @@ BlockedLog=Unalterable Logs -Field=Област +Field=Поле BlockedLogDesc=This module tracks some events into an unalterable log (that you can't modify once recorded) into a block chain, in real time. This module provides compatibility with requirements of laws of some countries (like France with the law Finance 2016 - Norme NF525). Fingerprints=Archived events and fingerprints FingerprintsDesc=This is the tool to browse or extract the unalterable logs. Unalterable logs are generated and archived locally into a dedicated table, in real time when you record a business event. You can use this tool to export this archive and save it into an external support (some countries, like France, ask that you do it every year). Note that, there is no feature to purge this log and every change tried to be done directly into this log (by a hacker for example) will be reported with a non-valid fingerprint. If you really need to purge this table because you used your application for a demo/test purpose and want to clean your data to start your production, you can ask your reseller or integrator to reset your database (all your data will be removed). diff --git a/htdocs/langs/bg_BG/boxes.lang b/htdocs/langs/bg_BG/boxes.lang index bff0882933e..0d8cccbc657 100644 --- a/htdocs/langs/bg_BG/boxes.lang +++ b/htdocs/langs/bg_BG/boxes.lang @@ -9,26 +9,26 @@ BoxLastCustomerBills=Последни фактури за продажба BoxOldestUnpaidCustomerBills=Най-стари неплатени фактури за продажба BoxOldestUnpaidSupplierBills=Най-стари неплатени фактури за доставка BoxLastProposals=Последни търговски предложения -BoxLastProspects=Последно променени перспективи +BoxLastProspects=Последно променени потенциални клиенти BoxLastCustomers=Последно променени клиенти BoxLastSuppliers=Последно променени доставчици -BoxLastCustomerOrders=Последни клиентски поръчки +BoxLastCustomerOrders=Последни поръчки за продажба BoxLastActions=Последни действия BoxLastContracts=Последни договори BoxLastContacts=Последни контакти / адреси BoxLastMembers=Последни членове BoxFicheInter=Последни интервенции BoxCurrentAccounts=Баланс по открити сметки -BoxTitleLastRssInfos=Новини: %s последни от %s +BoxTitleLastRssInfos=Новини: %s последни от %s BoxTitleLastProducts=Продукти / Услуги: %s последно променени BoxTitleProductsAlertStock=Продукти: сигнали за наличност -BoxTitleLastSuppliers=Доставчици: %s последно записани +BoxTitleLastSuppliers=Доставчици: %s последно добавени BoxTitleLastModifiedSuppliers=Доставчици: %sпоследно променени BoxTitleLastModifiedCustomers=Клиенти: %s последно променени -BoxTitleLastCustomersOrProspects=Клиенти или Перспективи: %s последно добавени +BoxTitleLastCustomersOrProspects=Клиенти или потенциални клиенти: %s последно добавени BoxTitleLastCustomerBills=Фактури за продажба: %s последно добавени BoxTitleLastSupplierBills=Фактури за доставка: %s последно добавени -BoxTitleLastModifiedProspects=Перспективи: %s последно променени +BoxTitleLastModifiedProspects=Потенциални клиенти: %s последно променени BoxTitleLastModifiedMembers=Членове: %s последно добавени BoxTitleLastFicheInter=Интервенции: %s последно променени BoxTitleOldestUnpaidCustomerBills=Фактури за продажба: %s най-стари неплатени @@ -36,50 +36,50 @@ BoxTitleOldestUnpaidSupplierBills=Фактури за доставка: %s на BoxTitleCurrentAccounts=Отворени сметки: баланси BoxTitleLastModifiedContacts=Контакти / Адреси: %s последно променени BoxMyLastBookmarks=Отметки: %s последни -BoxOldestExpiredServices=Най-старите действащи изтекли услуги -BoxLastExpiredServices=Договори: %s най-стари договори с активни изтичащи услуги +BoxOldestExpiredServices=Най-стари изтекли активни услуги +BoxLastExpiredServices=Договори: %s най-стари договори с активни изтекли услуги BoxTitleLastActionsToDo=Действия за извършване: %s последни BoxTitleLastContracts=Договори: %s последно променени BoxTitleLastModifiedDonations=Дарения: %s последно променени BoxTitleLastModifiedExpenses=Разходни отчети: %s последно променени -BoxGlobalActivity=Обща активност (фактури, предложения, поръчки) +BoxGlobalActivity=Глобална дейност (фактури, предложения, поръчки) BoxGoodCustomers=Добри клиенти BoxTitleGoodCustomers=%s Добри клиенти FailedToRefreshDataInfoNotUpToDate=Неуспешно опресняване на RSS поток. Последното успешно опресняване е на дата: %s LastRefreshDate=Последна дата на опресняване -NoRecordedBookmarks=Няма дефинирани отметки. -ClickToAdd=Щракнете тук, за да добавите. -NoRecordedCustomers=Няма записани клиенти -NoRecordedContacts=Няма записани контакти -NoActionsToDo=Няма дейности за вършене -NoRecordedOrders=Няма регистрирани клиентски поръчки -NoRecordedProposals=Няма записани предложения +NoRecordedBookmarks=Не са дефинирани отметки +ClickToAdd=Кликнете тук, за да добавите. +NoRecordedCustomers=Няма регистрирани клиенти +NoRecordedContacts=Няма регистрирани контакти +NoActionsToDo=Няма дейности за извършване +NoRecordedOrders=Няма регистрирани поръчки за продажба +NoRecordedProposals=Няма регистрирани предложения NoRecordedInvoices=Няма регистрирани фактури за продажба NoUnpaidCustomerBills=Няма регистрирани неплатени фактури за продажба NoUnpaidSupplierBills=Няма регистрирани неплатени фактури за доставка NoModifiedSupplierBills=Няма регистрирани фактури за доставка NoRecordedProducts=Няма регистрирани продукти / услуги -NoRecordedProspects=Няма регистрирани перспективи +NoRecordedProspects=Няма регистрирани потенциални клиенти NoContractedProducts=Няма договорени продукти / услуги NoRecordedContracts=Няма регистрирани договори -NoRecordedInterventions=Няма записани намеси +NoRecordedInterventions=Няма регистрирани интервенции BoxLatestSupplierOrders=Последни поръчки за покупка NoSupplierOrder=Няма регистрирани поръчка за покупка -BoxCustomersInvoicesPerMonth=Фактури клиенти по месец +BoxCustomersInvoicesPerMonth=Фактури за продажба на месец BoxSuppliersInvoicesPerMonth=Фактури за доставка на месец -BoxCustomersOrdersPerMonth=Клиентски поръчки на месец +BoxCustomersOrdersPerMonth=Поръчки за продажби на месец BoxSuppliersOrdersPerMonth=Поръчки за покупка на месец -BoxProposalsPerMonth=Предложения за месец -NoTooLowStockProducts=Няма продукт в наличност под желания минимум +BoxProposalsPerMonth=Търговски предложения за месец +NoTooLowStockProducts=Няма продукти в наличност, които да са под желания минимум. BoxProductDistribution=Дистрибуция на продукти / услуги ForObject=На %s BoxTitleLastModifiedSupplierBills=Фактури за доставка: %s последно променени BoxTitleLatestModifiedSupplierOrders=Поръчки за покупка: %s последно променени BoxTitleLastModifiedCustomerBills=Фактури за продажба: %s последно променени -BoxTitleLastModifiedCustomerOrders=Клиентски поръчки: %s последно променени +BoxTitleLastModifiedCustomerOrders=Поръчки за продажба: %s последно променени BoxTitleLastModifiedPropals=Търговски предложения: %s последно променени -ForCustomersInvoices=Клиента фактури -ForCustomersOrders=Клиентски поръчки +ForCustomersInvoices=Фактури за продажба +ForCustomersOrders=Поръчки на продажба ForProposals=Предложения LastXMonthRolling=Подвижни месеци: %s последно изтекли ChooseBoxToAdd=Добавяне на джаджа към таблото diff --git a/htdocs/langs/bg_BG/cashdesk.lang b/htdocs/langs/bg_BG/cashdesk.lang index cccc3f92130..1570f16cd8a 100644 --- a/htdocs/langs/bg_BG/cashdesk.lang +++ b/htdocs/langs/bg_BG/cashdesk.lang @@ -34,7 +34,7 @@ UserNeedPermissionToEditStockToUsePos=Искате да намалите нал DolibarrReceiptPrinter=Dolibarr принтер за квитанции PointOfSale=Точка на продажба PointOfSaleShort=POS -CloseBill=Затваряне на сметка +CloseBill=Приключване на сметка Floors=Floors Floor=Floor AddTable=Добавяне на таблица @@ -63,7 +63,7 @@ AutoPrintTickets=Автоматично отпечатване на билети EnableBarOrRestaurantFeatures=Включете функции за бар или ресторант ConfirmDeletionOfThisPOSSale=Потвърждавате ли изтриването на настоящата продажба? History=История -ValidateAndClose=Валидиране и затваряне +ValidateAndClose=Валидиране и приключване Terminal=Терминал NumberOfTerminals=Брой терминали TerminalSelect=Изберете терминал, който искате да използвате: diff --git a/htdocs/langs/bg_BG/companies.lang b/htdocs/langs/bg_BG/companies.lang index 9f839183654..ba2a4225d02 100644 --- a/htdocs/langs/bg_BG/companies.lang +++ b/htdocs/langs/bg_BG/companies.lang @@ -1,31 +1,31 @@ # Dolibarr language file - Source file is en_US - companies ErrorCompanyNameAlreadyExists=Името на фирмата %s вече съществува. Изберете друго. -ErrorSetACountryFirst=Първо задайте държава +ErrorSetACountryFirst=Първо изберете държава SelectThirdParty=Изберете контрагент ConfirmDeleteCompany=Сигурни ли сте че искате да изтриете тази компания и цялата наследена информация? -DeleteContact=Изтриване на контакт/адрес +DeleteContact=Изтриване на контакт / адрес ConfirmDeleteContact=Сигурни ли сте че искате да изтриете този контакт и цялата наследена информация? MenuNewThirdParty=Нов контрагент MenuNewCustomer=Нов клиент -MenuNewProspect=Нова перспектива +MenuNewProspect=Нов потенциален клиент MenuNewSupplier=Нов доставчик MenuNewPrivateIndividual=Ново физическо лице -NewCompany=Нова фирма (перспектива, клиент, доставчик) -NewThirdParty=Нов контрагент (перспектива, клиент, доставчик) +NewCompany=Нова фирма (потенциален клиент, клиент, доставчик) +NewThirdParty=Нов контрагент (потенциален клиент, клиент, доставчик) CreateDolibarrThirdPartySupplier=Създаване на контрагент (доставчик) -CreateThirdPartyOnly=Създаване контрагент +CreateThirdPartyOnly=Създаване на контрагент CreateThirdPartyAndContact=Създаване на контрагент + свързан контакт -ProspectionArea=Област потенциални -IdThirdParty=ID на контрагент -IdCompany=ID на фирма -IdContact=ID на контакт -Contacts=Контакти/Адреси +ProspectionArea=Секция за потенциални клиенти +IdThirdParty=Идентификатор на контрагент +IdCompany=Идентификатор на фирма +IdContact=Идентификатор на контакт +Contacts=Контакти / Адреси ThirdPartyContacts=Контакти на контрагента ThirdPartyContact=Контакт / Адрес на контрагента Company=Фирма -CompanyName=Име на фирмата +CompanyName=Име на фирма AliasNames=Друго име (търговско, марка, ...) -AliasNameShort=Псевдоним +AliasNameShort=Друго име Companies=Фирми CountryIsInEEC=Държавата е в рамките на Европейската икономическа общност PriceFormatInCurrentLanguage=Формат за показване на цената в текущия език и валута @@ -33,44 +33,44 @@ ThirdPartyName=Име на контрагент ThirdPartyEmail=Имейл на контрагент ThirdParty=Контрагент ThirdParties=Контрагенти -ThirdPartyProspects=Потенциални -ThirdPartyProspectsStats=Потенциални +ThirdPartyProspects=Потенциални клиенти +ThirdPartyProspectsStats=Потенциални клиенти ThirdPartyCustomers=Клиенти ThirdPartyCustomersStats=Клиенти -ThirdPartyCustomersWithIdProf12=Клиентите с %s или %s +ThirdPartyCustomersWithIdProf12=Клиенти с %s или %s ThirdPartySuppliers=Доставчици ThirdPartyType=Вид на контрагента -Individual=Частно лице +Individual=Физическо лице ToCreateContactWithSameName=Автоматично ще създаде контакт / адрес със същата информация като в контрагента. В повечето случаи, дори ако вашия контрагент е частно лице, е достатъчно да създадете само контрагент. ParentCompany=Фирма майка -Subsidiaries=Филиали -ReportByMonth=Отчет по месец -ReportByCustomers=Отчет по клиент -ReportByQuarter=Отчет по оценка -CivilityCode=Граждански код +Subsidiaries=Дъщерни дружества +ReportByMonth=Справка по месеци +ReportByCustomers=Справка по клиенти +ReportByQuarter=Справка по ставки +CivilityCode=Код на обръщение RegisteredOffice=Седалище Lastname=Фамилия Firstname=Собствено име PostOrFunction=Длъжност -UserTitle=Звание -NatureOfThirdParty=Същност контрагента +UserTitle=Обръщение +NatureOfThirdParty=Произход на контрагента Address=Адрес State=Област -StateShort=Състояние +StateShort=Област Region=Регион -Region-State=Регион - Щат +Region-State=Регион - Област Country=Държава -CountryCode=Код на държавата -CountryId=ID на държава +CountryCode=Код на държава +CountryId=Идентификатор на държава Phone=Телефон PhoneShort=Тел. Skype=Скайп -Call=Повикай -Chat=Чат +Call=Позвъни на +Chat=Чат с PhonePro=Сл. телефон PhonePerso=Дом. телефон PhoneMobile=Моб. телефон -No_Email=Отказване от масови имейли +No_Email=Отхвърляне на масови имейли Fax=Факс Zip=Пощенски код Town=Град @@ -80,9 +80,9 @@ DefaultLang=Език по подразбиране VATIsUsed=Използване на ДДС VATIsUsedWhenSelling=Това определя дали този контрагент включва ДДС или не, когато фактурира на своите собствени клиенти VATIsNotUsed=Не използва ДДС -CopyAddressFromSoc=Копирай адреса от детайлите на контрагента -ThirdpartyNotCustomerNotSupplierSoNoRef=Контрагента не е нито клиент, нито доставчик, няма налични свързани обекти -ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Контрагента не е нито клиент, нито доставчик, няма възможност за отстъпки +CopyAddressFromSoc=Копиране на адрес на контрагент +ThirdpartyNotCustomerNotSupplierSoNoRef=Контрагента не е нито клиент, нито доставчик и няма налични свързани обекти +ThirdpartyIsNeitherCustomerNorClientSoCannotHaveDiscounts=Контрагента не е нито клиент, нито доставчик и няма възможност за отстъпки PaymentBankAccount=Разплащателна банкова сметка OverAllProposals=Предложения OverAllOrders=Поръчки @@ -99,7 +99,7 @@ LocalTax1ES=RE LocalTax2ES=IRPF WrongCustomerCode=Невалиден код на клиент WrongSupplierCode=Невалиден код на доставчик -CustomerCodeModel=Образец на код на клиент +CustomerCodeModel=Модел за код на клиент SupplierCodeModel=Модел за код на доставчик Gencod=Баркод ##### Professional ID ##### @@ -115,8 +115,8 @@ ProfId3=Професионален ID 3 ProfId4=Професионален ID 4 ProfId5=Професионален ID 5 ProfId6=Професионален ID 6 -ProfId1AR=Проф. Id 1 (CUIT/CUIL) -ProfId2AR=Проф. Id 2 (доход бруто) +ProfId1AR=Проф. номер 1 (CUIT/CUIL) +ProfId2AR=Проф. номер 2 (доход бруто) ProfId3AR=- ProfId4AR=- ProfId5AR=- @@ -200,7 +200,7 @@ ProfId4IN=Prof Id 4 ProfId5IN=Prof Id 5 ProfId6IN=- ProfId1LU=Id. prof. 1 (R.C.S. Luxembourg) -ProfId2LU=Id. prof. 2 (Бизнес разрешение) +ProfId2LU=Id. prof. 2 (Business permit) ProfId3LU=- ProfId4LU=- ProfId5LU=- @@ -209,7 +209,7 @@ ProfId1MA=Id prof. 1 (R.C.) ProfId2MA=Id prof. 2 (Patente) ProfId3MA=Id prof. 3 (I.F.) ProfId4MA=Id prof. 4 (C.N.S.S.) -ProfId5MA=Ид. проф. 5 5 (Общ идентификационен номер на фирмата) +ProfId5MA=Id. prof. 5 (I.C.E.) ProfId6MA=- ProfId1MX=Prof Id 1 (R.F.C). ProfId2MX=Prof Id 2 (R..P. IMSS) @@ -261,25 +261,25 @@ VATIntra=Идент. номер по ДДС VATIntraShort=ДДС № VATIntraSyntaxIsValid=Синтаксиса е валиден VATReturn=ДДС декларация -ProspectCustomer=Потенциален / Клиент -Prospect=Потенциален +ProspectCustomer=Потенциален клиент / Клиент +Prospect=Потенциален клиент CustomerCard=Клиентска карта Customer=Клиент CustomerRelativeDiscount=Относителна клиентска отстъпка -SupplierRelativeDiscount=Относителна отстъпка от доставчика +SupplierRelativeDiscount=Относителна отстъпка от доставчик CustomerRelativeDiscountShort=Относителна отстъпка CustomerAbsoluteDiscountShort=Абсолютна отстъпка -CompanyHasRelativeDiscount=Този клиент има по подразбиране отстъпка %s%% +CompanyHasRelativeDiscount=Този клиент има отстъпка по подразбиране в размер на %s%% CompanyHasNoRelativeDiscount=Този клиент няма относителна отстъпка по подразбиране HasRelativeDiscountFromSupplier=Имате отстъпка по подразбиране от %s%% от този доставчик HasNoRelativeDiscountFromSupplier=Нямате относителна отстъпка по подразбиране от този доставчик CompanyHasAbsoluteDiscount=Този клиент има налични отстъпки (кредитни известия или авансови плащания) за %s %s CompanyHasDownPaymentOrCommercialDiscount=Този клиент има налични отстъпки (търговски предложения, авансови плащания) за %s %s -CompanyHasCreditNote=Този клиент все още има кредити за %s %s -HasNoAbsoluteDiscountFromSupplier=Нямате наличен отстъпка от този доставчик +CompanyHasCreditNote=Този клиент все още има кредитни известия в размер на %s %s +HasNoAbsoluteDiscountFromSupplier=Нямате налична отстъпка от този доставчик HasAbsoluteDiscountFromSupplier=Имате налични отстъпки (кредитно известие или авансови плащания) за %s %s от този доставчик HasDownPaymentOrCommercialDiscountFromSupplier=Имате налични отстъпки (търговски предложения, авансови плащания) за %s %s от този доставчик -HasCreditNoteFromSupplier=Имате кредитно известия за %s от %s този доставчик +HasCreditNoteFromSupplier=Имате кредитни известия за %s %s от този доставчик CompanyHasNoAbsoluteDiscount=Този клиент не разполага с наличен кредит за отстъпка CustomerAbsoluteDiscountAllUsers=Абсолютни клиентски отстъпки (предоставени от всички потребители) CustomerAbsoluteDiscountMy=Абсолютни клиентски отстъпки (предоставена от вас) @@ -288,18 +288,18 @@ SupplierAbsoluteDiscountMy=Абсолютни отстъпки от достав DiscountNone=Няма Vendor=Доставчик Supplier=Доставчик -AddContact=Създай контакт -AddContactAddress=Създй контакт/адрес -EditContact=Редактиране на контакт -EditContactAddress=Редактиране на контакт/адрес +AddContact=Създаване на контакт +AddContactAddress=Създаване на контакт / адрес +EditContact=Променяне на контакт +EditContactAddress=Променяне на контакт / адрес Contact=Контакт -ContactId=Контакт -ContactsAddresses=Контакти/Адреси +ContactId=Идентификатор на контакт +ContactsAddresses=Контакти / Адреси FromContactName=Име: -NoContactDefinedForThirdParty=Няма зададен контакт за тази контрагент -NoContactDefined=Няма зададен контакт -DefaultContact=Контакт/адрес по подразбиране -AddThirdParty=Създаване контрагент +NoContactDefinedForThirdParty=Няма дефиниран контакт за този контрагент +NoContactDefined=Няма дефиниран контакт +DefaultContact=Контакт / адрес по подразбиране +AddThirdParty=Създаване на контрагент DeleteACompany=Изтриване на фирма PersonalInformations=Лични данни AccountancyCode=Счетоводна сметка @@ -309,92 +309,92 @@ CustomerCodeShort=Код на клиента SupplierCodeShort=Код на доставчика CustomerCodeDesc=Код на клиента, уникален за всички клиенти SupplierCodeDesc=Код на доставчика, уникален за всички доставчици -RequiredIfCustomer=Изисква се, ако контрагентът е клиент или потенциален +RequiredIfCustomer=Изисква се, ако контрагентът е клиент или потенциален клиент RequiredIfSupplier=Изисква се, ако контрагента е доставчик ValidityControledByModule=Валидност, контролирана от модул ThisIsModuleRules=Правила за този модул -ProspectToContact=Потенциален за контакт +ProspectToContact=Потенциален клиент за контакт CompanyDeleted=Фирма "%s" е изтрита от базата данни. -ListOfContacts=Списък на контакти/адреси +ListOfContacts=Списък на контакти / адреси ListOfContactsAddresses=Списък на контакти / адреси ListOfThirdParties=Списък на контрагенти ShowCompany=Показване на контрагент -ShowContact=Покажи контакт +ShowContact=Показване на контакт ContactsAllShort=Всички (без филтър) -ContactType=Тип на контакт -ContactForOrders=Контакт за поръчката -ContactForOrdersOrShipments=Контакт за поръчки или пратки +ContactType=Тип контакт +ContactForOrders=Контакт за поръчка +ContactForOrdersOrShipments=Контакт за поръчка или доставка ContactForProposals=Контакт за предложение ContactForContracts=Контакт за договор ContactForInvoices=Контакт за фактура -NoContactForAnyOrder=Този контакт не е контакт за поръчка -NoContactForAnyOrderOrShipments=Този контакт не е контакт за поръчка или пратка -NoContactForAnyProposal=Този контакт не е контакт за търговско предложение -NoContactForAnyContract=Този контакт не е контакт за договор -NoContactForAnyInvoice=Този контакт не е контакт за фактура +NoContactForAnyOrder=Не е контакт за поръчка +NoContactForAnyOrderOrShipments=Не е контакт за поръчка или доставка +NoContactForAnyProposal=Не е контакт за търговско предложение +NoContactForAnyContract=Не е контакт за договор +NoContactForAnyInvoice=Не е контакт за фактура NewContact=Нов контакт NewContactAddress=Нов контакт / адрес -MyContacts=Моите контакти +MyContacts=Мои контакти Capital=Капитал -CapitalOf=Столица на %s -EditCompany=Редактиране на фирма -ThisUserIsNot=Този потребител не е перспектива, нито клиент, нито доставчик +CapitalOf=Капитал от %s +EditCompany=Променяне на фирма +ThisUserIsNot=Този потребител не е потенциален клиент, нито клиент, нито доставчик VATIntraCheck=Проверка -VATIntraCheckDesc=Идентификационния номер по ДДС трябва да включва префикса на държавата. Връзката %s използва услугата на Европейската Комисия за проверка на ДДС (VIES), която изисква достъп до интернет извън сървъра на Dolibarr. +VATIntraCheckDesc=Идентификационния номер по ДДС трябва да включва префикса на държавата. Връзката %s използва услугата на Европейската комисия за проверка на номер по ДДС (VIES), която изисква достъп до интернет извън сървъра на Dolibarr. VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do -VATIntraCheckableOnEUSite=Проверяване на вътрешно-общностния идентификационен номер по ДДС на интернет страницата на Европейската Комисия -VATIntraManualCheck=Можете също така да проверите ръчно на интернет страницата на Европейската Комисия %s -ErrorVATCheckMS_UNAVAILABLE=Проверката не е възможнао. Услугата не се предоставя от държавата-членка (%s). -NorProspectNorCustomer=Нито перспектива, нито клиент +VATIntraCheckableOnEUSite=Проверяване на вътрешно-общностния идентификационен номер по ДДС в интернет страницата на Европейската Комисия +VATIntraManualCheck=Може да проверите също така ръчно в интернет страницата на Европейската Комисия: %s +ErrorVATCheckMS_UNAVAILABLE=Проверка не е възможна. Услугата за проверка не се предоставя от държавата-членка (%s). +NorProspectNorCustomer=Нито потенциален клиент, нито клиент JuridicalStatus=Правна форма Staff=Служители -ProspectLevelShort=Потенциален -ProspectLevel=Потенциален -ContactPrivate=Частен +ProspectLevelShort=Потенциал +ProspectLevel=Потенциал +ContactPrivate=Личен ContactPublic=Споделен ContactVisibility=Видимост ContactOthers=Друг -OthersNotLinkedToThirdParty=Други, не свързани с контрагент -ProspectStatus=Потенциален статус +OthersNotLinkedToThirdParty=Другите, не свързани с контрагент +ProspectStatus=Статус на клиента PL_NONE=Няма PL_UNKNOWN=Неизвестен -PL_LOW=Ниско -PL_MEDIUM=Средно -PL_HIGH=Високо +PL_LOW=Нисък +PL_MEDIUM=Среден +PL_HIGH=Висок TE_UNKNOWN=- -TE_STARTUP=Стартира +TE_STARTUP=Стартъп TE_GROUP=Голяма фирма -TE_MEDIUM=Средно голяма фирма +TE_MEDIUM=Средна фирма TE_ADMIN=Правителствена TE_SMALL=Малка фирма TE_RETAIL=Търговец на дребно TE_WHOLE=Търговец на едро -TE_PRIVATE=Частно лице +TE_PRIVATE=Физическо лице TE_OTHER=Друг -StatusProspect-1=Да не контактува -StatusProspect0=Никога не е контактувано +StatusProspect-1=Да не се контактува +StatusProspect0=Не е контактувано StatusProspect1=Да се контактува -StatusProspect2=Контакт в процес -StatusProspect3=Контактът е направен -ChangeDoNotContact=Промяна на статуса до 'Да не контактува'; -ChangeNeverContacted=Промяна на статуса до 'Никога не е контактувано'; -ChangeToContact=Промяна на статуса на „Да се контактува“ -ChangeContactInProcess=Промяна на статуса до 'Контакт в процес' -ChangeContactDone=Промяна на статуса до 'Да се контактува' -ProspectsByStatus=Потенциални по статус +StatusProspect2=В процес на контактуване +StatusProspect3=Осъществен контакт +ChangeDoNotContact=Променяне на статуса на "Да не се контактува" +ChangeNeverContacted=Променяне на статуса на "Не е контактувано" +ChangeToContact=Променяне на статуса на "Да се контактува" +ChangeContactInProcess=Променяне на статуса на "В процес на контактуване" +ChangeContactDone=Променяне на статуса на "Осъществен контакт" +ProspectsByStatus=Потенциални клиенти по статус NoParentCompany=Няма -ExportCardToFormat=Износна карта формат -ContactNotLinkedToCompany=Контактът не е свързан с никой контрагент -DolibarrLogin=Dolibarr вход -NoDolibarrAccess=Няма Dolibarr достъп -ExportDataset_company_1=Контрагенти (фирми / фондации / частни лица) и техните характеристики +ExportCardToFormat=Карта за експортиране във формат +ContactNotLinkedToCompany=Контактът не е свързан с нито един контрагент +DolibarrLogin=Dolibarr потребител +NoDolibarrAccess=Няма достъп до Dolibarr +ExportDataset_company_1=Контрагенти (фирми / фондации / физически лица) и техните характеристики ExportDataset_company_2=Контакти и техните характеристики ImportDataset_company_1=Контрагенти и техните характеристики ImportDataset_company_2=Допълнителни контакти / адреси и атрибути към контрагента -ImportDataset_company_3=Банкови сметки на контрагентите -ImportDataset_company_4=Търговски представители на контрагента (назначени търговски представители / потребители на към фирмите) +ImportDataset_company_3=Банкови сметки на контрагенти +ImportDataset_company_4=Търговски представители за контрагента (назначени търговски представители / потребители към фирмите) PriceLevel=Ценово ниво -PriceLevelLabels=Имена на ценовите нива +PriceLevelLabels=Етикети на ценови нива DeliveryAddress=Адрес за доставка AddAddress=Добавяне на адрес SupplierCategory=Категория на доставчика @@ -404,31 +404,31 @@ ConfirmDeleteFile=Сигурен ли сте, че искате да изтри AllocateCommercial=Назначен търговски представител Organization=Организация FiscalYearInformation=Фискална година -FiscalMonthStart=Начален месец на фискалната година -YouMustAssignUserMailFirst=Трябва да създадете имейл за този потребител, преди да можете да добавите известие по имейл. -YouMustCreateContactFirst=За да можете да добавяте известия по имейл, първо трябва да определите контакти с валидни имейли за контрагента -ListSuppliersShort=Списък на доставчиците -ListProspectsShort=Списък на перспективите -ListCustomersShort=Списък на клиентите +FiscalMonthStart=Начален месец на фискална година +YouMustAssignUserMailFirst=Трябва да създадете имейл за този потребител, преди да може да добавите известие по имейл. +YouMustCreateContactFirst=За да може да добавяте известия по имейл, първо трябва да определите контакти с валидни имейли за контрагента +ListSuppliersShort=Списък на доставчици +ListProspectsShort=Списък на потенциални клиенти +ListCustomersShort=Списък на клиенти ThirdPartiesArea=Контрагенти / контакти LastModifiedThirdParties=Контрагенти: %s последно променени UniqueThirdParties=Общ брой контрагенти InActivity=Отворен ActivityCeased=Затворен ThirdPartyIsClosed=Контрагента е затворен -ProductsIntoElements=Списък на продуктите/услугите в %s -CurrentOutstandingBill=Текуща висяща сметка -OutstandingBill=Макс. за висяща сметка -OutstandingBillReached=Максималния кредитен лимит е достигнат +ProductsIntoElements=Списък на продукти / услуги в %s +CurrentOutstandingBill=Текуща неизплатена сметка +OutstandingBill=Максимална неизплатена сметка +OutstandingBillReached=Достигнат е максимумът за неизплатена сметка OrderMinAmount=Минимално количество за поръчка -MonkeyNumRefModelDesc=Генерира номер с формат %sYYMM-NNNN за код на клиент и %sYYMM-NNNN за код на доставчик, където YY е година, MM е месецa, а NNNN е поредица без прекъсване и без връщане към 0. -LeopardNumRefModelDesc=Кодът е безплатен. Този код може да бъде променен по всяко време. -ManagingDirectors=Име на управител(и) (гл. изп. директор, директор, президент...) +MonkeyNumRefModelDesc=Генерира номер с формат %syymm-nnnn за код на клиент и %syymm-nnnn за код на доставчик, където yy е година, mm е месецa, а nnnn е поредица без прекъсване и без връщане към 0. +LeopardNumRefModelDesc=Кодът е свободен. Този код може да бъде променян по всяко време. +ManagingDirectors=Име на управител (изпълнителен директор, директор, президент...) MergeOriginThirdparty=Дублиращ контрагент (контрагентът, който искате да изтриете) -MergeThirdparties=Сливане на контрагенти +MergeThirdparties=Обединяване на контрагенти ConfirmMergeThirdparties=Сигурни ли сте, че искате да обедините този контрагент с текущия? Всички свързани обекти (фактури, поръчки, ...) ще бъдат преместени в текущия контрагент, след което контрагента ще бъде изтрит. ThirdpartiesMergeSuccess=Контрагентите са обединени -SaleRepresentativeLogin=Входна информация за търговския представител +SaleRepresentativeLogin=Входна информация за търговски представител SaleRepresentativeFirstname=Собствено име на търговския представител SaleRepresentativeLastname=Фамилия на търговския представител ErrorThirdpartiesMerge=При изтриването на контрагента възникна грешка. Моля, проверете историята. Промените са отменени. diff --git a/htdocs/langs/bg_BG/contracts.lang b/htdocs/langs/bg_BG/contracts.lang index 97a5594bab1..4009928c061 100644 --- a/htdocs/langs/bg_BG/contracts.lang +++ b/htdocs/langs/bg_BG/contracts.lang @@ -2,7 +2,7 @@ ContractsArea=Секция за договори ListOfContracts=Списък на договори AllContracts=Всички договори -ContractCard=Карта +ContractCard=Договор ContractStatusNotRunning=Не се изпълнява ContractStatusDraft=Чернова ContractStatusValidated=Валидиран diff --git a/htdocs/langs/bg_BG/donations.lang b/htdocs/langs/bg_BG/donations.lang index d4d23b26c78..e9d89f90726 100644 --- a/htdocs/langs/bg_BG/donations.lang +++ b/htdocs/langs/bg_BG/donations.lang @@ -1,7 +1,7 @@ # Dolibarr language file - Source file is en_US - donations Donation=Дарение Donations=Дарения -DonationRef=Дарение +DonationRef=Реф. дарение Donor=Дарител AddDonation=Създаване на дарение NewDonation=Ново дарение @@ -9,26 +9,26 @@ DeleteADonation=Изтриване на дарение ConfirmDeleteADonation=Сигурни ли сте, че искате да изтриете това дарение? ShowDonation=Показване на дарение PublicDonation=Публично дарение -DonationsArea=Дарения -DonationStatusPromiseNotValidated=Обещано дарение -DonationStatusPromiseValidated=Потвърдено дарение -DonationStatusPaid=Получено дарение -DonationStatusPromiseNotValidatedShort=Проект -DonationStatusPromiseValidatedShort=Потвърдено +DonationsArea=Секция за дарения +DonationStatusPromiseNotValidated=Чернова +DonationStatusPromiseValidated=Валидирано +DonationStatusPaid=Получено +DonationStatusPromiseNotValidatedShort=Чернова +DonationStatusPromiseValidatedShort=Валидирано DonationStatusPaidShort=Получено DonationTitle=Разписка за дарение DonationDatePayment=Дата на плащане -ValidPromess=Потвърждаване на дарението +ValidPromess=Валидиране на дарение DonationReceipt=Разписка за дарение -DonationsModels=Образци на документи за разписки за дарения +DonationsModels=Модели на документи за разписки за дарения LastModifiedDonations=Дарения: %s последно променени -DonationRecipient=Получател на дарението -IConfirmDonationReception=Получателят декларира, че е получил дарение на стойност -MinimumAmount=Минималното количество е %s -FreeTextOnDonations=Свободен текст, който да се показва в долния колонтитул +DonationRecipient=Получател на дарение +IConfirmDonationReception=Получателят декларира полученото като дарение на следната сума +MinimumAmount=Минималната сума е %s +FreeTextOnDonations=Свободен текст в дарения FrenchOptions=Опции за Франция -DONATION_ART200=Показване на артикул 200 от CGI ако сте загрижени -DONATION_ART238=Показване на артикул 238 от CGI ако сте загрижени -DONATION_ART885=Показване на артикул 885 от CGI ако сте загрижени +DONATION_ART200=Показване на артикул 200 от CGI, ако сте загрижени +DONATION_ART238=Показване на артикул 238 от CGI, ако сте загрижени +DONATION_ART885=Показване на артикул 885 от CGI, ако сте загрижени DonationPayment=Плащане на дарение DonationValidated=Дарение %s е валидирано diff --git a/htdocs/langs/bg_BG/errors.lang b/htdocs/langs/bg_BG/errors.lang index 5818039f365..a277ca94c52 100644 --- a/htdocs/langs/bg_BG/errors.lang +++ b/htdocs/langs/bg_BG/errors.lang @@ -7,7 +7,7 @@ ErrorButCommitIsDone=Бяха намерени грешки, но въпреки ErrorBadEMail=Имейлът %s е грешен ErrorBadUrl=Адреса %s не е ErrorBadValueForParamNotAString=Неправилна стойност за параметъра ви. Обикновено, когато липсва превод. -ErrorLoginAlreadyExists=Вход %s вече съществува. +ErrorLoginAlreadyExists=Потребителят %s вече съществува. ErrorGroupAlreadyExists=Група %s вече съществува. ErrorRecordNotFound=Запишете не е намерен. ErrorFailToCopyFile=Не успя да копира файла "%s" в "%s". @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Специални знаци не са ра ErrorNumRefModel=Позоваване съществува в база данни (%s) и не е съвместим с това правило за номериране. Премахване на запис или преименува препратка към активира този модул. ErrorQtyTooLowForThisSupplier=Прекалено ниско количество за този доставчик или не е определена цена на продукта за този доставчик ErrorOrdersNotCreatedQtyTooLow=Някои поръчки не са създадени поради твърде ниски количества -ErrorModuleSetupNotComplete=Настройката на модула изглежда непълна. Отидете на Начало - Настройка - Модули, за да я завършите. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Грешка на маска ErrorBadMaskFailedToLocatePosOfSequence=Грешка, маска без поредния номер ErrorBadMaskBadRazMonth=Грешка, неправилна стойност за нулиране @@ -102,7 +102,7 @@ ErrorProdIdAlreadyExist=%s се възлага на друга трета ErrorFailedToSendPassword=Не може да се изпрати парола ErrorFailedToLoadRSSFile=Не успее да получи RSS Feed. Опитайте се да добавите постоянно MAIN_SIMPLEXMLLOAD_DEBUG ако съобщения за грешки не предоставя достатъчно информация. ErrorForbidden=Достъпът отказан.
Опитвате се да отворите страница, зона или функция на деактивиран модул или сте в неудостоверена сесия или това не е позволено за Вашия потребител. -ErrorForbidden2=Разрешение за вход може да бъде определена от вашия администратор Dolibarr от менюто %s-> %s. +ErrorForbidden2=Права за този потребител могат да бъдат определени от вашият Dolibarr администратор в меню %s -> %s. ErrorForbidden3=Изглежда, че Dolibarr не се използва чрез заверено сесия. Обърнете внимание на документация за настройка Dolibarr за знаят как да управляват удостоверявания (Htaccess, mod_auth или други ...). ErrorNoImagickReadimage=Клас Imagick не се намира в тази PHP. Без визуализация могат да бъдат на разположение. Администраторите могат да деактивирате тази раздела от менюто Setup - Display. ErrorRecordAlreadyExists=Запис вече съществува @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL адресът %s трябва да започва ErrorNewRefIsAlreadyUsed=Грешка, новата референция вече е използвана ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Грешка, изтриването на плащане, свързано с приключена фактура, е невъзможно. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=За този член бе зададена парола. Въпреки това, не е създаден потребителски акаунт. Така че тази парола е съхранена, но не може да се използва за влизане в Dolibarr. Може да се използва от външен модул/интерфейс, но ако не е необходимо да дефинирате потребителско име или парола за член може да деактивирате опцията "Управление на вход за всеки член" от настройката на модула Членове. Ако трябва да управлявате вход, но не се нуждаете от парола, можете да запазите това поле празно, за да избегнете това предупреждение. Забележка: Имейлът може да се използва и като вход, ако членът е свързан с потребител. WarningMandatorySetupNotComplete=Кликнете тук, за да настроите задължителните параметри WarningEnableYourModulesApplications=Кликнете тук, за да активирате вашите модули и приложения @@ -230,7 +231,7 @@ WarningsOnXLines=Предупреждения върху %s линии и WarningNoDocumentModelActivated=Не е активиран модел за генериране на документи. Няма да бъде избран модел по подразбиране, докато не проверите настройката на модула. WarningLockFileDoesNotExists=Внимание, след като инсталацията приключи, трябва да деактивирате инструментите за инсталиране/миграция, като добавите файл install.lock в директорията %s. Липсата на този файл е сериозен риск за сигурността. WarningUntilDirRemoved=Всички предупреждения за сигурността (видими само от администраторите) ще останат активни, докато е налице уязвимостта (или се добави константа MAIN_REMOVE_INSTALL_WARNING в Настройка -> Други настройки). -WarningCloseAlways=Внимание, затваряне се прави, дори ако сумата се различава между източника и целеви елементи. Активирайте тази функция с повишено внимание. +WarningCloseAlways=Внимание, приключването се извършва, дори ако количеството се различава между източника и целевите елементи. Активирайте тази функция с повишено внимание. WarningUsingThisBoxSlowDown=Предупреждение, използвайки това поле сериозно забавя всички страници, които го показват. WarningClickToDialUserSetupNotComplete=Настройките на информацията за ClickToDial за вашия потребител са непълни (вижте таб ClickToDial във вашата потребителска карта). WarningFeatureDisabledWithDisplayOptimizedForBlindNoJs=Фунцкията е неактива, когато конфигурацията на показването е оптимизирана за незрящ човек или текстови браузери. diff --git a/htdocs/langs/bg_BG/exports.lang b/htdocs/langs/bg_BG/exports.lang index 8ced9342b21..09ea3bdddf6 100644 --- a/htdocs/langs/bg_BG/exports.lang +++ b/htdocs/langs/bg_BG/exports.lang @@ -1,42 +1,42 @@ # Dolibarr language file - Source file is en_US - exports -ExportsArea=Износът площ -ImportArea=Внос област -NewExport=Нов износ -NewImport=Нов внос +ExportsArea=Секция за експортиране +ImportArea=Секция за импортиране +NewExport=Ново експортиране +NewImport=Ново импортиране ExportableDatas=Изнасяни набор от данни ImportableDatas=Се внасят набор от данни SelectExportDataSet=Изберете набор от данни, които искате да експортирате ... SelectImportDataSet=Изберете набор от данни, който искате да импортирате ... -SelectExportFields=Изберете полетата, които искате да експортирате, или да изберете предварително дефинирана Profil износ -SelectImportFields=Choose source file fields you want to import and their target field in database by moving them up and down with anchor %s, or select a predefined import profile: -NotImportedFields=Области на файла източник не са внесени -SaveExportModel=Запази този профил за износ, ако смятате да го използвате отново по-късно ... -SaveImportModel=Запази този профил за внос, ако смятате да го използвате отново по-късно ... +SelectExportFields=Изберете полетата, които искате да експортирате или изберете предварително дефиниран профил за експортиране +SelectImportFields=Изберете полетата на вашият файл, които искате да импортирате и техните целеви полета в базата данни като ги преместите нагоре или надолу с помощта на %s, или изберете предварително дефиниран профил за импортиране: +NotImportedFields=Полетата на входния файл не са импортирани +SaveExportModel=Запазване на вашият избор като профил / шаблон за експортиране (за повторно използване). +SaveImportModel=Запазване на този профил за импортиране (за повторно използване)... ExportModelName=Износ името на профила -ExportModelSaved=Export профила записват под името %s. +ExportModelSaved=Профилът за експортиране е запазен като %s. ExportableFields=Изнасяни полета ExportedFields=Износът на полета ImportModelName=Име Внос профил -ImportModelSaved=Внос профила спаси под името %s. +ImportModelSaved=Профилът за импортиране е запазен като %s. DatasetToExport=Dataset за износ DatasetToImport=Импортиране на файл в масив от данни ChooseFieldsOrdersAndTitle=Изберете полета за ... FieldsTitle=Полетата заглавие FieldTitle=Заглавие -NowClickToGenerateToBuildExportFile=Сега, изберете файловия формат, в комбо кутия и кликнете върху "Генериране" за изграждане на файл за износ ... +NowClickToGenerateToBuildExportFile=Сега, изберете формата на файла от полето на комбинирания списък и кликнете върху „Генериране“, за да създадете файла за експортиране... AvailableFormats=Налични формати LibraryShort=Библиотека Step=Стъпка -FormatedImport=Import assistant -FormatedImportDesc1=This area allows to import personalized data, using an assistant to help you in process without technical knowledge. -FormatedImportDesc2=First step is to choose a king of data you want to load, then file to load, then to choose which fields you want to load. -FormatedExport=Export assistant -FormatedExportDesc1=This area allows to export personalized data, using an assistant to help you in process without technical knowledge. -FormatedExportDesc2=First step is to choose a predefined dataset, then to choose which fields you want in your result files, and which order. -FormatedExportDesc3=When data to export are selected, you can define output file format you want to export your data to. +FormatedImport=Асистент за импортиране +FormatedImportDesc1=Този модул ви позволява да актуализирате съществуващи данни или да добавяте нови обекти в базата данни от файл без технически познания, използвайки асистент. +FormatedImportDesc2=Първата стъпка е да изберете вида данни, които искате да импортирате, след това формата на файла съдържащ информацията за импортиране и полетата, които искате да импортирате. +FormatedExport=Асистент за експортиране +FormatedExportDesc1=Тези инструменти позволяват експортирането на персонализирани данни с помощта на асистент, за да ви помогне в процеса, без да се изискват технически познания. +FormatedExportDesc2=Първата стъпка е да изберете предварително дефиниран набор от данни, а след това кои полета искате да експортирате и в какъв ред. +FormatedExportDesc3=Когато са избрани данните за експортиране може да изберете формата на изходния файл. Sheet=Лист NoImportableData=Не се внасят данни (без модул с определенията, за да се позволи на импортирането на данни) -FileSuccessfullyBuilt=File generated +FileSuccessfullyBuilt=Файлът е генериран SQLUsedForExport=SQL Заявка използвани за изграждане на износно досие LineId=Id на линия LineLabel=Етикет на ред @@ -44,90 +44,90 @@ LineDescription=Описание на линия LineUnitPrice=Единичната цена на линия LineVATRate=ДДС Цена на линия LineQty=Количество за линия -LineTotalHT=Сума нетно от данък за съответствие +LineTotalHT=Сума без данък за ред LineTotalTTC=Сума с данък линия LineTotalVAT=Размер на ДДС за линия TypeOfLineServiceOrProduct=Вид на линията (0 = продукт, 1 = услуга) FileWithDataToImport=Файл с данни за внос FileToImport=Източник файл, за да импортирате -FileMustHaveOneOfFollowingFormat=Файл за импортиране трябва да има следния формат -DownloadEmptyExample=Изтеглете пример за празна файла източник -ChooseFormatOfFileToImport=Изберете формат на файла, за да се използва като формат на файла за импортиране, като кликнете върху %s икони за да го изберете ... -ChooseFileToImport=Качване на файл и след това кликнете върху %s икони, за да изберете файл като източник на внос файл ... +FileMustHaveOneOfFollowingFormat=Файлът за импортиране трябва да бъде в един от следните формати +DownloadEmptyExample=Изтегляне на шаблонния файл с информация за съдържанието на полето (* са задължителни полета) +ChooseFormatOfFileToImport=Изберете формата на файла, който да използвате като формат за импортиране, като кликнете върху иконата на %s, за да го изберете... +ChooseFileToImport=Качете на файл, след което кликнете върху иконата %s, за да изберете файла като файл съдържащ данните за импортиране... SourceFileFormat=Изходния формат на файла FieldsInSourceFile=Полетата в файла източник -FieldsInTargetDatabase=Target fields in Dolibarr database (bold=mandatory) -Field=Област +FieldsInTargetDatabase=Целеви полета в базата данни на Dolibarr (удебелен шрифт = задължително) +Field=Поле NoFields=Не полета MoveField=Преместете поле %s броя на колоните ExampleOfImportFile=Example_of_import_file SaveImportProfile=Запиши този профил за внос ErrorImportDuplicateProfil=Грешка при запазване на този профил за внос с това име. Съществуващ профил с това име вече съществува. TablesTarget=Целеви маси -FieldsTarget=Целеви области -FieldTarget=Целева областта -FieldSource=Източник областта +FieldsTarget=Целеви полета +FieldTarget=Целево поле +FieldSource=Начално поле NbOfSourceLines=Брой на линиите във файла източник -NowClickToTestTheImport=Проверете внос параметрите, които сте задали. Ако те са правилни, кликнете върху бутона "%s", за да започне симулация на процеса на импортиране (няма данни ще се промени във вашата база данни, това е само симулация за момента) ... -RunSimulateImportFile=Стартиране на симулация внос -FieldNeedSource=This field requires data from the source file +NowClickToTestTheImport=Проверете дали файловият формат (разделители за поле и низ) на вашият файл съответства на показаните опции и че сте пропуснали заглавния ред или те ще бъдат маркирани като грешки в следващата симулация.
Кликнете върху бутона "%s", за да проверите структурата / съдържанието на файла и да симулирате процеса на импортиране.
Няма да бъдат променяни данни в базата данни . +RunSimulateImportFile=Стартиране на симулация за импортиране +FieldNeedSource=Това поле изисква данни от файла източник SomeMandatoryFieldHaveNoSource=Някои от задължителните полета не са източник от файл с данни InformationOnSourceFile=Информация за файла източник -InformationOnTargetTables=Информация за целевите области +InformationOnTargetTables=Информация за целевите полета SelectAtLeastOneField=Включете поне едно поле източник в колоната на полета за износ SelectFormat=Изберете този файлов формат за внос -RunImportFile=Стартиране на файл от вноса -NowClickToRunTheImport=Проверете резултат на внос симулация. Ако всичко е наред, стартиране на окончателен внос. -DataLoadedWithId=Цялата информация ще бъде заредена с следното id на импорт:\n%s -ErrorMissingMandatoryValue=Задължителни данни в файла източник за полеви %s е празна. -TooMuchErrors=Все още %s други линии код с грешки, но продукцията е ограничена. -TooMuchWarnings=Все още %s други линии източник с предупреждения, но продукцията е ограничена. +RunImportFile=Импортиране на данни +NowClickToRunTheImport=Проверете резултатите от симулацията за импортиране. Коригирайте всички грешки и повторете теста.
Когато симулацията не съобщава за грешки може да продължите с импортирането на данните в базата данни. +DataLoadedWithId=Импортираните данни ще имат допълнително поле във всяка таблица на базата данни с този идентификатор за импортиране: %s, за да могат да се търсят в случай на проучване за проблем, свързан с това импортиране. +ErrorMissingMandatoryValue=Липсват задължителните данни във файла източник за поле %s. +TooMuchErrors=Все още има %s други източници с грешки, но списъкът с грешки е редуциран. +TooMuchWarnings=Все още има %s други източници с предупреждения, но списъкът с грешки е редуциран. EmptyLine=Празен ред (ще бъдат отхвърлени) -CorrectErrorBeforeRunningImport=Трябва първо да поправи всички грешки, преди да пуснете окончателен внос. +CorrectErrorBeforeRunningImport=Трябва да коригирате всички грешки, преди да изпълните окончателното импортиране. FileWasImported=Файла е внесен с цифровите %s. -YouCanUseImportIdToFindRecord=You can find all imported record in your database by filtering on field import_key='%s'. +YouCanUseImportIdToFindRecord=Може да намерите всички импортирани записи във вашата база данни, чрез филтриране за поле import_key = '%s'. NbOfLinesOK=Брой на линии с грешки и без предупреждения: %s. NbOfLinesImported=Брой на линиите успешно внесени: %s. DataComeFromNoWhere=Стойност да вмъкнете идва от нищото в изходния файл. DataComeFromFileFieldNb=Стойност да вмъкнете идва от %s номер в полето файла източник. -DataComeFromIdFoundFromRef=Стойност, която идва от %s номер на полето на изходния файл ще бъдат използвани за намиране ID на родител обект да използвате (Така Objet %s, че има код от файла източник трябва да съществува в Dolibarr). -DataComeFromIdFoundFromCodeId=Code that comes from field number %s of source file will be used to find id of parent object to use (So the code from source file must exists into dictionary %s). Note that if you know id, you can also use it into source file instead of code. Import should work in both cases. -DataIsInsertedInto=Данни, идващи от файла източник, ще се добавя в следните области: -DataIDSourceIsInsertedInto=Идентификацията на родителския обект, намерен с помощта на данни във файла източник, ще се добавя в следните области: -DataCodeIDSourceIsInsertedInto=ID на родител ред от кода, ще се включат в следните области: +DataComeFromIdFoundFromRef=Стойността, която идва от поле с номер %s на файла източник ще бъде използвана за намиране на идентификатора на главния обект, който да се използва (така че обектът %s, който има реф. от файла източник трябва да съществува в базата данни) +DataComeFromIdFoundFromCodeId=Кодът, който идва от поле с номер %s на файла източник ще бъде използван за намиране на идентификатора на главния обект, който да се използва (така че кодът от файла източник трябва да съществува в речника %s). Обърнете внимание, че ако знаете id-то можете да го използвате и във файла източник вместо кода. Импортирането трябва да работи и в двата случая. +DataIsInsertedInto=Данните идващи от входния файл ще бъдат вмъкнати в следното поле: +DataIDSourceIsInsertedInto=Идентификационният номер (id) на главния обект е намерен с помощта на данните във файла източник и ще бъде вмъкнат в следното поле: +DataCodeIDSourceIsInsertedInto=Идентификатора на основния ред, открит от кода, ще бъде вмъкнат в следното поле: SourceRequired=Стойността на данните е задължително SourceExample=Пример за възможно стойността на данните ExampleAnyRefFoundIntoElement=Всеки код за елемент %s ExampleAnyCodeOrIdFoundIntoDictionary=Всеки код (или id) намерено в речник %s -CSVFormatDesc=Разделени със запетаи формат стойност файл (CSV).
Това е формат текстов файл, където полетата са разделени със сепаратор [%s]. Ако сепаратор се намира във вътрешността съдържанието поле, поле се закръглява кръг характер [%s]. Бягство характер, за да избягат кръг характер е %s]. -Excel95FormatDesc=Файлов формат на Excel (XLS)
Това е роден Excel 95 формат (BIFF5). -Excel2007FormatDesc=Excel файлов формат (XLSX)
Това е роден формат Excel 2007 (SpreadsheetML). +CSVFormatDesc= Стойност, разделена със запетая файлов формат (.csv).
Това е формат на текстов файл, в който полетата са разделени от разделител [%s]. Ако в съдържанието на полето бъде открит разделител, то полето се закръглява със закръгляващ символ [%s]. Escape символа определящ закръгляващия символ е [%s]. +Excel95FormatDesc=Excel файлов формат (.xls)
Това е оригинален формат на Excel 95 (BIFF5). +Excel2007FormatDesc=Excel файлов формат (.xlsx).
Това е оригинален формат на Excel 2007 (SpreadsheetML). TsvFormatDesc=Tab раздяла формат стойност файл (TSV)
Това е формат текстов файл, където полетата са разделени с табулатор [Tab]. -ExportFieldAutomaticallyAdded=Field %s was automatically added. It will avoid you to have similar lines to be treated as duplicate record (with this field added, all lines will own their own id and will differ). -CsvOptions=Csv опции -Separator=Разделител -Enclosure=Enclosure +ExportFieldAutomaticallyAdded=Полето %s е автоматично добавено. Ще бъдат избегнати подобни редове, които да се третират като дублиращи се записи (с добавянето на това поле всички редове ще притежават свой собствен идентификатор (id) и ще се различават). +CsvOptions=Опции за формат CSV +Separator=Разделител за полета +Enclosure=Разделител на низове SpecialCode=Специален код ExportStringFilter=%% позволява заместването на един или повече знаци в текста -ExportDateFilter=YYYY, YYYYMM, YYYYMMDD : filters by one year/month/day
YYYY+YYYY, YYYYMM+YYYYMM, YYYYMMDD+YYYYMMDD : filters over a range of years/months/days
> YYYY, > YYYYMM, > YYYYMMDD : filters on all following years/months/days
< YYYY, < YYYYMM, < YYYYMMDD : filters on all previous years/months/days -ExportNumericFilter=NNNNN filters by one value
NNNNN+NNNNN filters over a range of values
< NNNNN filters by lower values
> NNNNN filters by higher values -ImportFromLine=Import starting from line number -EndAtLineNb=End at line number -ImportFromToLine=Import line numbers (from - to) -SetThisValueTo2ToExcludeFirstLine=For example, set this value to 3 to exclude the 2 first lines -KeepEmptyToGoToEndOfFile=Keep this field empty to go up to the end of file -SelectPrimaryColumnsForUpdateAttempt=Select column(s) to use as primary key for update attempt -UpdateNotYetSupportedForThisImport=Update is not supported for this type of import (only insert) -NoUpdateAttempt=No update attempt was performed, only insert -ImportDataset_user_1=Users (employees or not) and properties -ComputedField=Computed field +ExportDateFilter=YYYY, YYYYMM, YYYYMMDD: филтри по година/месец/ден
YYYY+YYYY, YYYYMM+YYYYMM, YYYYMMDD+YYYYMMDD: филтри с обхват година/месец/ден
> YYYY, > YYYYMM, > YYYYMMDD: филтри за следващи години/месеци/дни
< YYYY, < YYYYMM, < YYYYMMDD: филтри за предишни години/месеци/дни +ExportNumericFilter=NNNNN филтри по една стойност
NNNNN+NNNNN филтри с обхват от стойности
< NNNNN филтри с по-ниски стойности
> NNNNN филтри с по-високи стойности +ImportFromLine=Импортиране с начален ред +EndAtLineNb=Край с последен ред +ImportFromToLine=Обхват (от - до), например да пропуснете заглавните редове +SetThisValueTo2ToExcludeFirstLine=Например, задайте тази стойност на 3, за да изключите първите 2 реда.
Ако заглавните редове не са пропуснати, това ще доведе до множество грешки по време на симулацията за импортиране. +KeepEmptyToGoToEndOfFile=Запазете това поле празно, за да обработите всички редове до края на файла. +SelectPrimaryColumnsForUpdateAttempt=Изберете колона(и), които да използвате като първичен ключ за импортиране на актуализация +UpdateNotYetSupportedForThisImport=Актуализацията не се поддържа за този тип импортиране (само вмъкване) +NoUpdateAttempt=Не е извършен опит за актуализация, само вмъкване +ImportDataset_user_1=Потребители (служители или не) и реквизити +ComputedField=Изчислено поле ## filters SelectFilterFields=Ако желаете на филтрирате по някои стойности, просто въведете стойностите тук. FilteredFields=Филтрирани полета FilteredFieldsValues=Стойност за филтер FormatControlRule=Правило за контролиране на формата ## imports updates -KeysToUseForUpdates=Key to use for updating data -NbInsert=Number of inserted lines: %s -NbUpdate=Number of updated lines: %s -MultipleRecordFoundWithTheseFilters=Multiple records have been found with these filters: %s +KeysToUseForUpdates=Ключ (колона), който да се използва за актуализиране на съществуващи данни +NbInsert=Брой вмъкнати редове: %s +NbUpdate=Брой актуализирани редове: %s +MultipleRecordFoundWithTheseFilters=Намерени са няколко записа с тези филтри: %s diff --git a/htdocs/langs/bg_BG/holiday.lang b/htdocs/langs/bg_BG/holiday.lang index 615a1b6e0ad..2f177c7595c 100644 --- a/htdocs/langs/bg_BG/holiday.lang +++ b/htdocs/langs/bg_BG/holiday.lang @@ -114,9 +114,9 @@ HolidaysToValidateBody=По-долу е молба за отпуск за вал HolidaysToValidateDelay=Тази молба за отпуск е за период по-малък от %s дни. HolidaysToValidateAlertSolde=Потребителят, който е създал молбата за отпуск, няма достатъчно налични дни. HolidaysValidated=Валидирани молби за отпуск -HolidaysValidatedBody=Вашата молба за отпуск от %s до %s е валидирана. +HolidaysValidatedBody=Вашата молба за отпуск от %s до %s е одобрена. HolidaysRefused=Молбата е отхвърлена -HolidaysRefusedBody=Вашата молба за отпуск от %s до %s е отхвърлена поради следната причина: +HolidaysRefusedBody=Вашата молба за отпуск от %s до %s е отхвърлена, поради следната причина: HolidaysCanceled=Анулирани молби за отпуск HolidaysCanceledBody=Вашата молба за отпуск от %s до %s е анулирана. FollowedByACounter=1: Този вид отпуск е необходимо да бъде проследяван от брояч. Броячът се увеличава ръчно или автоматично, а когато молбата за отпуск е валидирана, броячът се намалява.
0: Не се проследява от брояч. diff --git a/htdocs/langs/bg_BG/install.lang b/htdocs/langs/bg_BG/install.lang index 99593f84b86..b2410484448 100644 --- a/htdocs/langs/bg_BG/install.lang +++ b/htdocs/langs/bg_BG/install.lang @@ -1,214 +1,214 @@ # Dolibarr language file - Source file is en_US - install InstallEasy=Просто следвайте инструкциите стъпка по стъпка. -MiscellaneousChecks=Предпоставки проверка -ConfFileExists=Конфигурационния файл %s съществува. -ConfFileDoesNotExistsAndCouldNotBeCreated=Configuration file %s does not exist and could not be created! -ConfFileCouldBeCreated=Конфигурационния файл %s може да бъде създаден. -ConfFileIsNotWritable=Configuration file %s is not writable. Check permissions. For first install, your web server must be able to write into this file during configuration process ("chmod 666" for example on a Unix like OS). -ConfFileIsWritable=Конфигурационния файл %s е с права за писане. -ConfFileMustBeAFileNotADir=Конфигурационният файл %s трябва да бъде файл, а не директория. -ConfFileReload=Reloading parameters from configuration file. +MiscellaneousChecks=Проверка за необходими условия +ConfFileExists=Конфигурационен файл %s съществува. +ConfFileDoesNotExistsAndCouldNotBeCreated=Конфигурационният файл %s не съществува и не може да бъде създаден! +ConfFileCouldBeCreated=Конфигурационният файл %s може да бъде създаден. +ConfFileIsNotWritable=Конфигурационният файл %s не може да се презаписва. Проверете разрешенията. За първото инсталиране, вашият уеб сървър трябва да може да записва в този файл по време на процеса на конфигуриране (например "chmod 666" в системи от типа Unix). +ConfFileIsWritable=Конфигурационният файл %s е презаписваем. +ConfFileMustBeAFileNotADir=Конфигурационният файл %s трябва да е файл, а не директория. +ConfFileReload=Презареждане на параметри от конфигурационен файл. PHPSupportSessions=PHP поддържа сесии. PHPSupportPOSTGETOk=PHP поддържа променливи POST и GET. -PHPSupportPOSTGETKo=It's possible your PHP setup does not support variables POST and/or GET. Check the parameter variables_order in php.ini. -PHPSupportGD=This PHP supports GD graphical functions. -PHPSupportCurl=This PHP supports Curl. -PHPSupportUTF8=This PHP supports UTF8 functions. -PHPSupportIntl=This PHP supports Intl functions. -PHPMemoryOK=PHP макс сесия памет е %s. Това трябва да бъде достатъчно. -PHPMemoryTooLow=Your PHP max session memory is set to %s bytes. This is too low. Change your php.ini to set memory_limit parameter to at least %s bytes. -Recheck=Click here for a more detailed test -ErrorPHPDoesNotSupportSessions=Your PHP installation does not support sessions. This feature is required to allow Dolibarr to work. Check your PHP setup and permissions of the sessions directory. -ErrorPHPDoesNotSupportGD=Your PHP installation does not support GD graphical functions. No graphs will be available. -ErrorPHPDoesNotSupportCurl=Your PHP installation does not support Curl. -ErrorPHPDoesNotSupportUTF8=Your PHP installation does not support UTF8 functions. Dolibarr cannot work correctly. Resolve this before installing Dolibarr. -ErrorPHPDoesNotSupportIntl=Your PHP installation does not support Intl functions. +PHPSupportPOSTGETKo=Възможно е вашата настройка на PHP да не поддържа променливи POST и/или GET. Проверете параметъра variables_order в php.ini. +PHPSupportGD=PHP поддържа GD графични функции. +PHPSupportCurl=PHP поддържа Curl. +PHPSupportUTF8=PHP поддържа UTF8 функции. +PHPSupportIntl=PHP поддържа Intl функции. +PHPMemoryOK=Максималният размер на паметта за PHP сесия е настроен на %s. Това трябва да е достатъчно. +PHPMemoryTooLow=Вашият максимален размер на паметта за PHP сесия е настроен на %s байта. Това е твърде ниско. Променете php.ini като зададете стойност на параметър memory_limit поне %s байта. +Recheck=Кликнете тук за по-подробен тест +ErrorPHPDoesNotSupportSessions=Вашата PHP инсталация не поддържа сесии. Тази функция е необходима, за да позволи на Dolibarr да работи. Проверете настройките на PHP и разрешенията на директорията за сесиите. +ErrorPHPDoesNotSupportGD=Вашата PHP инсталация не поддържа GD графични функции. Няма да се показват графики. +ErrorPHPDoesNotSupportCurl=Вашата PHP инсталация не поддържа Curl. +ErrorPHPDoesNotSupportUTF8=Вашата PHP инсталация не поддържа UTF8 функции. Dolibarr не може да работи правилно. Решете това преди да инсталирате Dolibarr. +ErrorPHPDoesNotSupportIntl=Вашата PHP инсталация не поддържа Intl функции. ErrorDirDoesNotExists=Директорията %s не съществува. -ErrorGoBackAndCorrectParameters=Go back and check/correct the parameters. +ErrorGoBackAndCorrectParameters=Върнете се назад и проверете / коригирайте параметрите. ErrorWrongValueForParameter=Може да сте въвели грешна стойност за параметър '%s'. -ErrorFailedToCreateDatabase=Неуспешно създаване на базата данни '%s'. -ErrorFailedToConnectToDatabase=Неуспешна връзка с база данни '%s'. +ErrorFailedToCreateDatabase=Неуспешно създаване на база данни '%s'. +ErrorFailedToConnectToDatabase=Неуспешно свързване към базата данни '%s' ErrorDatabaseVersionTooLow=Версията на базата данни (%s) е твърде стара. Изисква се версия %s или по-нова. ErrorPHPVersionTooLow=Версията на PHP е твърде стара. Изисква се версия %s. -ErrorConnectedButDatabaseNotFound=Connection to server successful but database '%s' not found. -ErrorDatabaseAlreadyExists=Базата данни %s вече съществува. -IfDatabaseNotExistsGoBackAndUncheckCreate=If the database does not exist, go back and check option "Create database". +ErrorConnectedButDatabaseNotFound=Връзката със сървъра е успешна, но не е намерена база данни '%s'. +ErrorDatabaseAlreadyExists=База данни '%s' вече съществува. +IfDatabaseNotExistsGoBackAndUncheckCreate=Ако базата данни не съществува, върнете се и проверете опцията "Създаване на база данни". IfDatabaseExistsGoBackAndCheckCreate=Ако базата данни вече съществува, върнете се обратно и махнете отметката на "Създаване на база данни". -WarningBrowserTooOld=Version of browser is too old. Upgrading your browser to a recent version of Firefox, Chrome or Opera is highly recommended. -PHPVersion=Версия на PHP -License=Лиценз за използване +WarningBrowserTooOld=Версията на браузъра е твърде стара. Препоръчва се надграждане на браузъра ви до текуща версия на Firefox, Chrome или Opera. +PHPVersion=PHP версия +License=Използване на лиценз ConfigurationFile=Конфигурационен файл -WebPagesDirectory=Директорията, в която се съхраняват уеб страници -DocumentsDirectory=Директория за съхраняване качени и генерирани документи -URLRoot=URL корен -ForceHttps=Принудително сигурни връзки (HTTPS) -CheckToForceHttps=Изберете тази опция, за принудително сигурни връзки (HTTPS).
Това означава, че уеб сървърът е конфигуриран с SSL сертификат. +WebPagesDirectory=Директория, където се съхраняват уеб страници +DocumentsDirectory=Директория за съхраняване на качени и генерирани документи +URLRoot=Основен URL адрес +ForceHttps=Принудителни защитени връзки (https) +CheckToForceHttps=Изберете тази опция, за да активирате защитени връзки (https).
Това изисква уеб сървърът да е конфигуриран за работа със SSL сертификат. DolibarrDatabase=База данни на Dolibarr -DatabaseType=Тип на базата данни +DatabaseType=Тип база данни DriverType=Тип драйвер Server=Сървър -ServerAddressDescription=Name or ip address for the database server. Usually 'localhost' when the database server is hosted on the same server as the web server. -ServerPortDescription=Порт на сървъра на базата данни. Оставете празно ако е неизвестно. -DatabaseServer=Сървър на базата данни +ServerAddressDescription=Име или IP адрес на сървъра с базата данни. Обикновено "localhost", когато сървърът с базата данни е инсталиран на същия сървър като уеб сървъра. +ServerPortDescription=Порт на сървъра с базата данни. Оставете празно, ако е неизвестен. +DatabaseServer=Сървър за бази данни DatabaseName=Име на базата данни -DatabasePrefix=Database table prefix -DatabasePrefixDescription=Database table prefix. If empty, defaults to llx_. -AdminLogin=User account for the Dolibarr database owner. -PasswordAgain=Retype password confirmation -AdminPassword=Парола на собственика на базата данни на Dolibarr. +DatabasePrefix=Префикс на таблицата с база данни +DatabasePrefixDescription=Префикс на таблицата с база данни. Ако е празно, по подразбиране ще бъде llx_. +AdminLogin=Потребителски акаунт за собственика на базата данни на Dolibarr. +PasswordAgain=Повторете паролата +AdminPassword=Парола за собственика на базата данни на Dolibarr. CreateDatabase=Създаване на база данни -CreateUser=Create user account or grant user account permission on the Dolibarr database -DatabaseSuperUserAccess=Сървър на базата данни - Достъп супер потребител -CheckToCreateDatabase=Check the box if the database does not exist yet and so must be created.
In this case, you must also fill in the user name and password for the superuser account at the bottom of this page. -CheckToCreateUser=Check the box if:
the database user account does not yet exist and so must be created, or
if the user account exists but the database does not exist and permissions must be granted.
In this case, you must enter the user account and password and also the superuser account name and password at the bottom of this page. If this box is unchecked, database owner and password must already exist. -DatabaseRootLoginDescription=Superuser account name (to create new databases or new users), mandatory if the database or its owner does not already exist. -KeepEmptyIfNoPassword=Leave empty if superuser has no password (NOT recommended) -SaveConfigurationFile=Saving parameters to +CreateUser=Създайте потребителски акаунт или предоставете разрешение за потребителски акаунт на базата данни на Dolibarr +DatabaseSuperUserAccess=Сървър за база данни - Достъп за супер потребител +CheckToCreateDatabase=Поставете отметка в квадратчето, ако базата данни все още не съществува и трябва да бъде създадена.
В този случай трябва да попълните потребителското име и паролата за акаунта на супер потребителя в долната част на тази страница. +CheckToCreateUser=Поставете отметка в квадратчето, ако:
потребителският акаунт за базата данни все още не съществува и трябва да бъде създаден или
ако съществува потребителски акаунт, но базата данни не съществува и трябва да бъдат предоставени разрешения.
В този случай трябва да въведете потребителския акаунт и паролата, а също , и името, и паролата на супер потребителя в долната част на тази страница. Ако това квадратче не е маркирано, собственикът на базата данни и паролата трябва вече да съществуват. +DatabaseRootLoginDescription=Потребителско име на супер потребител (за създаване на нови бази данни или нови потребители), което е задължително, ако базата данни или нейният собственик все още не съществуват. +KeepEmptyIfNoPassword=Оставете празно, ако супер потребителят няма парола (НЕ се препоръчва) +SaveConfigurationFile=Запазване на параметрите в ServerConnection=Свързване със сървъра DatabaseCreation=Създаване на база данни CreateDatabaseObjects=Създаване на обекти в базата данни ReferenceDataLoading=Зареждане на референтни данни TablesAndPrimaryKeysCreation=Създаване на таблици и първични ключове -CreateTableAndPrimaryKey=Създаване на таблицата %s -CreateOtherKeysForTable=Създаване на чужди ключове и индекси за таблицата %s +CreateTableAndPrimaryKey=Създаване на таблица %s +CreateOtherKeysForTable=Създаване на чужди ключове и индекси за таблица %s OtherKeysCreation=Създаване на чужди ключове и индекси FunctionsCreation=Създаване на функции AdminAccountCreation=Създаване на администраторски профил -PleaseTypePassword=Please type a password, empty passwords are not allowed! -PleaseTypeALogin=Please type a login! -PasswordsMismatch=Passwords differs, please try again! -SetupEnd=Край на настройкате -SystemIsInstalled=Инсталирането завърши. -SystemIsUpgraded=Dolibarr е обновен успешно. +PleaseTypePassword=Моля, въведете парола, празно поле не е разрешено! +PleaseTypeALogin=Моля, въведете данни за вход! +PasswordsMismatch=Паролите са различни, моля, опитайте отново! +SetupEnd=Край на настройката +SystemIsInstalled=Инсталация е завършена. +SystemIsUpgraded=Dolibarr е успешно актуализиран. YouNeedToPersonalizeSetup=Трябва да конфигурирате Dolibarr според вашите нужди (външен вид, функции, ...). За да направите това, моля последвайте връзката по-долу: -AdminLoginCreatedSuccessfuly=Dolibarr administrator login '%s' created successfully. -GoToDolibarr=Отиди на Dolibarr -GoToSetupArea=Отиди на Dolibarr (област за настройка) -MigrationNotFinished=The database version is not completely up to date: run the upgrade process again. -GoToUpgradePage=Отидете отново на страницата за надграждане +AdminLoginCreatedSuccessfuly=Администраторския профил ' %s ' за Dolibarr е успешно създаден. +GoToDolibarr=Отидете в Dolibarr +GoToSetupArea=Отидете в Dolibarr (секция за настройка) +MigrationNotFinished=Версията на базата данни не е напълно актуална, изпълнете отново процеса на актуализация. +GoToUpgradePage=Отидете отново в страницата за актуализация WithNoSlashAtTheEnd=Без наклонена черта "/" в края -DirectoryRecommendation=It is recommended to use a directory outside of the web pages. +DirectoryRecommendation=Препоръчително е да използвате директория извън уеб страниците. LoginAlreadyExists=Вече съществува -DolibarrAdminLogin=Администраторски вход в Dolibarr -AdminLoginAlreadyExists=Dolibarr administrator account '%s' already exists. Go back if you want to create another one. -FailedToCreateAdminLogin=Failed to create Dolibarr administrator account. -WarningRemoveInstallDir=Warning, for security reasons, once the install or upgrade is complete, you should add a file called install.lock into the Dolibarr document directory in order to prevent the accidental/malicious use of the install tools again. -FunctionNotAvailableInThisPHP=Not available in this PHP +DolibarrAdminLogin=Администратор на Dolibarr +AdminLoginAlreadyExists=Администраторският профил ' %s ' за Dolibarr вече съществува. Върнете се обратно, ако искате да създадете друг. +FailedToCreateAdminLogin=Неуспешно създаване на администраторски профил за Dolibarr. +WarningRemoveInstallDir=Внимание, от съображения за сигурност, след като инсталирането или приключи актуализацията, трябва да добавите файл с име install.lock в директорията /documents на Dolibarr, за да предотвратите повторното използване на инструментите за инсталиране. +FunctionNotAvailableInThisPHP=Не е налично за тази PHP инсталация ChoosedMigrateScript=Изберете скрипт за миграция -DataMigration=Database migration (data) -DatabaseMigration=Database migration (structure + some data) -ProcessMigrateScript=Скрипта обработва +DataMigration=Миграция на база данни (данни) +DatabaseMigration=Миграция на база данни (структура + някои данни) +ProcessMigrateScript=Скриптова обработка ChooseYourSetupMode=Изберете режим на настройка и кликнете върху "Начало"... FreshInstall=Нова инсталация -FreshInstallDesc=Use this mode if this is your first install. If not, this mode can repair a incomplete previous install. If you want to upgrade your version, choose "Upgrade" mode. -Upgrade=Надграждане -UpgradeDesc=Използвайте този режим, ако желаете да замените старите файлове на Dolibarr с файлове от по-нова версия. Това ще обнови вашата база данни и данни. +FreshInstallDesc=Използвайте този режим, ако това е първата ви инсталация. Ако не, този режим може да поправи непълна предишна инсталация. Ако искате да актуализирате версията си, изберете режим "Актуализация". +Upgrade=Актуализация +UpgradeDesc=Използвайте този режим, ако сте заменили старите Dolibarr файлове с файлове от по-нова версия. Това ще подобри вашата база данни. Start=Начало -InstallNotAllowed=Настройката не разрешена поради правата на файла conf.php -YouMustCreateWithPermission=Трябва да създадете файл %s и да настроите права за запис в него от уеб сървъра по време на процеса на инсталиране. -CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload the page. -AlreadyDone=Вече мигрирахте +InstallNotAllowed=Настройката не е позволена от липса на разрешения в conf.php +YouMustCreateWithPermission=Трябва да създадете файл %s и да зададете разрешения за запис върху него за уеб сървъра по време на инсталационния процес. +CorrectProblemAndReloadPage=Моля, отстранете проблема и натиснете F5, за да презаредите страницата. +AlreadyDone=Вече са мигрирани DatabaseVersion=Версия на базата данни ServerVersion=Версия на сървъра на базата данни YouMustCreateItAndAllowServerToWrite=Трябва да създадете тази директория и да позволите на уеб сървъра да записва в нея. DBSortingCollation=Ред за сортиране на символи -YouAskDatabaseCreationSoDolibarrNeedToConnect=You selected create database %s, but for this, Dolibarr needs to connect to server %s with super user %s permissions. -YouAskLoginCreationSoDolibarrNeedToConnect=You selected create database user %s, but for this, Dolibarr needs to connect to server %s with super user %s permissions. -BecauseConnectionFailedParametersMayBeWrong=The database connection failed: the host or super user parameters must be wrong. +YouAskDatabaseCreationSoDolibarrNeedToConnect=Вие избрахте да създадете база данни %s , но за тази цел Dolibarr трябва да се свърже със сървъра %s със права на супер потребител %s +YouAskLoginCreationSoDolibarrNeedToConnect=Вие избрахте да създадете потребител за база данни %s , но за тази цел Dolibarr трябва да се свърже със сървъра %s с права на супер потребител %s . +BecauseConnectionFailedParametersMayBeWrong=Връзката с базата данни е неуспешна: параметрите на хоста или супер потребителя са грешни. OrphelinsPaymentsDetectedByMethod=Orphans плащане е открито по метода %s -RemoveItManuallyAndPressF5ToContinue=Премахнете го ръчно и натиснете F5, за да продължите. +RemoveItManuallyAndPressF5ToContinue=Махнете го ръчно и натиснете F5, за да продължите. FieldRenamed=Полето е преименувано -IfLoginDoesNotExistsCheckCreateUser=If the user does not exist yet, you must check option "Create user" -ErrorConnection=Server "%s", database name "%s", login "%s", or database password may be wrong or the PHP client version may be too old compared to the database version. -InstallChoiceRecommanded=Препоръчителен избор е да инсталирате версия %s от вашата текуща версия %s +IfLoginDoesNotExistsCheckCreateUser=Ако потребителят все още не съществува, трябва да включите опцията "Създаване на потребител" +ErrorConnection=Сървърът " %s ", името на базата данни " %s ", потребителят " %s " или паролата на базата данни може да са грешни, или PHP версията на клиента може да е твърде стара в сравнение с версията на базата данни. +InstallChoiceRecommanded=Препоръчителен избор е да се инсталира версия %s от текущата ви версия %s InstallChoiceSuggested=Избор за инсталиране, предложен от инсталатора. -MigrateIsDoneStepByStep=The targeted version (%s) has a gap of several versions. The install wizard will come back to suggest a further migration once this one is complete. -CheckThatDatabasenameIsCorrect=Check that the database name "%s" is correct. -IfAlreadyExistsCheckOption=Ако това име е вярно и тази база данни все още не съществува, трябва да проверите опцията "Създаване на база данни". +MigrateIsDoneStepByStep=Целевата версия (%s) има пропуск в няколко версии. Съветникът за инсталиране ще се върне, за да предложи по-нататъшна миграция, след като приключи тази. +CheckThatDatabasenameIsCorrect=Проверете дали името на базата данни " %s " е правилно. +IfAlreadyExistsCheckOption=Ако това име е вярно и тази база данни все още не съществува, трябва да изберете опцията "Създаване на база данни". OpenBaseDir=Параметър PHP openbasedir -YouAskToCreateDatabaseSoRootRequired=You checked the box "Create database". For this, you need to provide the login/password of superuser (bottom of form). -YouAskToCreateDatabaseUserSoRootRequired=You checked the box "Create database owner". For this, you need to provide the login/password of superuser (bottom of form). -NextStepMightLastALongTime=The current step may take several minutes. Please wait until the next screen is shown completely before continuing. -MigrationCustomerOrderShipping=Migrate shipping for sales orders storage +YouAskToCreateDatabaseSoRootRequired=Поставихте отметка в квадратчето „Създаване на база данни“. За тази цел трябва да предоставите потребителско име / парола на супер потребителя (в края на формуляра). +YouAskToCreateDatabaseUserSoRootRequired=Поставихте отметка в квадратчето „Създаване на собственик на база данни“. За тази цел трябва да предоставите потребителско име / парола на супер потребителя (в края на формуляра). +NextStepMightLastALongTime=Текущата стъпка може да отнеме няколко минути. Моля, изчакайте, докато следващият екран се покаже напълно, преди да продължите. +MigrationCustomerOrderShipping=Мигрирайте доставката за съхранение на поръчки за продажби MigrationShippingDelivery=Надграждане на хранилище на доставки MigrationShippingDelivery2=Надграждане на хранилище на доставки 2 MigrationFinished=Миграцията завърши -LastStepDesc=Last step: Define here the login and password you wish to use to connect to Dolibarr. Do not lose this as it is the master account to administer all other/additional user accounts. +LastStepDesc= Последна стъпка : Определете тук потребителското име и паролата, които искате да използвате, за да се свържете с Dolibarr. Не губете това, тъй като това е главният акаунт за администриране на всички други / допълнителни потребителски акаунти. ActivateModule=Активиране на модул %s -ShowEditTechnicalParameters=Натиснете тук за да покажете/редактирате параметрите за напреднали (експертен режим) -WarningUpgrade=Warning:\nDid you run a database backup first?\nThis is highly recommended. Loss of data (due to for example bugs in mysql version 5.5.40/41/42/43) may be possible during this process, so it is essential to take a complete dump of your database before starting any migration.\n\nClick OK to start migration process... -ErrorDatabaseVersionForbiddenForMigration=Your database version is %s. It has a critical bug, making data loss possible if you make structural changes in your database, such as is required by the migration process. For his reason, migration will not be allowed until you upgrade your database to a layer (patched) version (list of known buggy versions: %s) -KeepDefaultValuesWamp=You used the Dolibarr setup wizard from DoliWamp, so values proposed here are already optimized. Change them only if you know what you are doing. -KeepDefaultValuesDeb=You used the Dolibarr setup wizard from a Linux package (Ubuntu, Debian, Fedora...), so the values proposed here are already optimized. Only the password of the database owner to create must be entered. Change other parameters only if you know what you are doing. -KeepDefaultValuesMamp=You used the Dolibarr setup wizard from DoliMamp, so the values proposed here are already optimized. Change them only if you know what you are doing. -KeepDefaultValuesProxmox=You used the Dolibarr setup wizard from a Proxmox virtual appliance, so the values proposed here are already optimized. Change them only if you know what you are doing. -UpgradeExternalModule=Run dedicated upgrade process of external module -SetAtLeastOneOptionAsUrlParameter=Set at least one option as a parameter in URL. For example: '...repair.php?standard=confirmed' -NothingToDelete=Nothing to clean/delete -NothingToDo=Nothing to do +ShowEditTechnicalParameters=Кликнете тук, за да покажете / редактирате разширените параметри (експертен режим) +WarningUpgrade=Внимание:\nАрхивирахте ли преди това базата данни?\nТова е силно препоръчително. Загубата на данни (поради грешки в mysql версия 5.5.40/41/42/43) може да е възможна по време на този процес, така че е важно да се направи пълно архивиране на базата данни преди започване на миграция.\n\nКликнете върху „OK“, за да започнете процеса на мигриране... +ErrorDatabaseVersionForbiddenForMigration=Версията на вашата база данни е %s. Има критична грешка, което прави загубата на данни възможна, ако извършвате структурни промени в базата данни, каквито се изискват от процеса на миграция. Поради тази причина миграцията няма да бъде разрешена, докато не актуализирате базата данни до следваща (закърпена) версия (списък на известните версии с бъгове: %s) +KeepDefaultValuesWamp=Използвахте съветника за настройка на Dolibarr от DoliWamp, така че предложените тук стойности вече са оптимизирани. Променяйте ги, само ако знаете какво правите. +KeepDefaultValuesDeb=Използвахте съветника за настройка на Dolibarr от Linux пакет (Ubuntu, Debian, Fedora...), така че предложените тук стойности вече са оптимизирани. Трябва да се въведе само паролата на собственика на базата данни, който ще се създава. Променяйте другите параметри, само ако знаете какво правите. +KeepDefaultValuesMamp=Използвахте съветника за настройка на Dolibarr от DoliMamp, така че предложените тук стойности вече са оптимизирани. Променяйте ги само, ако знаете какво правите. +KeepDefaultValuesProxmox=Използвахте съветника за настройка на Dolibarr от виртуалното устройство на Proxmox, така че предложените тук стойности вече са оптимизирани. Променяйте ги, само ако знаете какво правите. +UpgradeExternalModule=Изпълнете препоръчителния процес за обновяване на външния модул +SetAtLeastOneOptionAsUrlParameter=Задайте поне един параметър като параметър в URL адреса. Например: "... repair.php?standard=confirmed" +NothingToDelete=Няма нищо за почистване / изтриване +NothingToDo=Няма нищо за правене ######### # upgrade -MigrationFixData=Корекция на denormalized данни -MigrationOrder=Миграция на данни за поръчки от клиенти -MigrationSupplierOrder=Data migration for vendor's orders -MigrationProposal=Миграция на данни за оферти -MigrationInvoice=Миграция на данни за фактури за клиенти +MigrationFixData=Поправка за денормализирани данни +MigrationOrder=Миграция на данни за поръчки за продажба +MigrationSupplierOrder=Миграция на данни за поръчки за покупка +MigrationProposal=Миграция на данни за търговски предложения +MigrationInvoice=Миграция на данни за фактури за продажба MigrationContract=Миграция на данни за договори -MigrationSuccessfullUpdate=Надграждането е успешно -MigrationUpdateFailed=Неуспешен процес на надграждане +MigrationSuccessfullUpdate=Актуализацията е успешна +MigrationUpdateFailed=Процесът на актуализация не бе успешен MigrationRelationshipTables=Миграция на данни за свързани таблици (%s) -MigrationPaymentsUpdate=Корекция на данни за плащане -MigrationPaymentsNumberToUpdate=%s плащания за актуализиране -MigrationProcessPaymentUpdate=Актуализиране на плащания %s -MigrationPaymentsNothingToUpdate=Няма повече задачи +MigrationPaymentsUpdate=Корекция на данни за плащания +MigrationPaymentsNumberToUpdate=%s плащане(ия) за актуализиране +MigrationProcessPaymentUpdate=Актуализиране на плащане(ия) %s +MigrationPaymentsNothingToUpdate=Няма повече неща за правене MigrationPaymentsNothingUpdatable=Няма повече плащания, които могат да бъдат коригирани -MigrationContractsUpdate=Корекция на данни в договор +MigrationContractsUpdate=Корекция на данни за договори MigrationContractsNumberToUpdate=%s договор(и) за актуализиране -MigrationContractsLineCreation=Създаване на ред в договор с реф. %s -MigrationContractsNothingToUpdate=Няма повече задачи -MigrationContractsFieldDontExist=Field fk_facture does not exist anymore. Nothing to do. -MigrationContractsEmptyDatesUpdate=Корекция на празна дата в договор -MigrationContractsEmptyDatesUpdateSuccess=Contract empty date correction done successfully -MigrationContractsEmptyDatesNothingToUpdate=Няма празна дата на договор за коригиране -MigrationContractsEmptyCreationDatesNothingToUpdate=Няма дата за създаване на договор за коригиране -MigrationContractsInvalidDatesUpdate=Корекция на неправилни дати на договор -MigrationContractsInvalidDateFix=Корекция на договор %s (Дата на договора=%s, Начална дата на услуга мин.=%s) -MigrationContractsInvalidDatesNumber=%s променени договори -MigrationContractsInvalidDatesNothingToUpdate=Няма дата с лоша стойност за коригиране -MigrationContractsIncoherentCreationDateUpdate=Лоша стойност за дата на създаване на договор -MigrationContractsIncoherentCreationDateUpdateSuccess=Bad value contract creation date correction done successfully -MigrationContractsIncoherentCreationDateNothingToUpdate=Няма лоши стойности за дата на създаване на договор за коригиране -MigrationReopeningContracts=Отворен договор затворен по грешка -MigrationReopenThisContract=Ново отваряне на договор %s -MigrationReopenedContractsNumber=%s договори са променени -MigrationReopeningContractsNothingToUpdate=Няма затворен договор за отваряне -MigrationBankTransfertsUpdate=Update links between bank entry and a bank transfer +MigrationContractsLineCreation=Създаване на ред за реф. договор %s +MigrationContractsNothingToUpdate=Няма повече неща за правене +MigrationContractsFieldDontExist=Поле fk_facture вече не съществува. Няма нищо за правене. +MigrationContractsEmptyDatesUpdate=Корекция на празна дата в договори +MigrationContractsEmptyDatesUpdateSuccess=Корекцията на празната дата в договора е успешно извършена +MigrationContractsEmptyDatesNothingToUpdate=Няма празни дати в договори за коригиране +MigrationContractsEmptyCreationDatesNothingToUpdate=Няма дати на създаване в договори за коригиране +MigrationContractsInvalidDatesUpdate=Корекция на неправилни дати в договори +MigrationContractsInvalidDateFix=Корекция на договор %s (Дата на договора=%s, Начална дата на услуга=%s) +MigrationContractsInvalidDatesNumber=%s променен(и) договор(а) +MigrationContractsInvalidDatesNothingToUpdate=Няма неправилни дати в договори за коригиране +MigrationContractsIncoherentCreationDateUpdate=Корекция на неправилни дати на създаване в договори +MigrationContractsIncoherentCreationDateUpdateSuccess=Корекцията на неправилните дати на създаване в договори е успешно извършена +MigrationContractsIncoherentCreationDateNothingToUpdate=Няма неправилни дати на създаване в договори за коригиране +MigrationReopeningContracts=Отворен договор е затворен с грешка +MigrationReopenThisContract=Повторно отваряне на договор %s +MigrationReopenedContractsNumber=%s променен(и) договор(а) +MigrationReopeningContractsNothingToUpdate=Няма затворени договори за отваряне +MigrationBankTransfertsUpdate=Актуализиране на връзките между банков запис и банков превод MigrationBankTransfertsNothingToUpdate=Всички връзки са актуални MigrationShipmentOrderMatching=Актуализация на експедиционни бележки MigrationDeliveryOrderMatching=Актуализация на обратни разписки -MigrationDeliveryDetail=Актуализация на доставката -MigrationStockDetail=Актуализиране на наличната стойност на продукти +MigrationDeliveryDetail=Актуализация на доставки +MigrationStockDetail=Актуализиране на стоковата наличност на продукти MigrationMenusDetail=Актуализиране на таблици за динамични менюта -MigrationDeliveryAddress=Актуализиране на адрес за доставка на пратки, -MigrationProjectTaskActors=Data migration for table llx_projet_task_actors -MigrationProjectUserResp=Миграция на полето fk_user_resp на llx_projet llx_element_contact -MigrationProjectTaskTime=Актуализация на времето, прекарано в секунда +MigrationDeliveryAddress=Актуализиране на адреси за доставка в пратки +MigrationProjectTaskActors=Миграция на данни за таблица llx_projet_task_actors +MigrationProjectUserResp=Миграция на поле fk_user_resp от llx_projet към llx_element_contact +MigrationProjectTaskTime=Актуализиране на отделеното време в секунди MigrationActioncommElement=Актуализиране на данните за действия -MigrationPaymentMode=Data migration for payment type +MigrationPaymentMode=Миграция на данни за типът на плащане MigrationCategorieAssociation=Миграция на категории -MigrationEvents=Migration of events to add event owner into assignment table -MigrationEventsContact=Migration of events to add event contact into assignment table -MigrationRemiseEntity=Update entity field value of llx_societe_remise -MigrationRemiseExceptEntity=Update entity field value of llx_societe_remise_except -MigrationUserRightsEntity=Update entity field value of llx_user_rights -MigrationUserGroupRightsEntity=Update entity field value of llx_usergroup_rights -MigrationUserPhotoPath=Migration of photo paths for users -MigrationReloadModule=Презареждане на модула %s -MigrationResetBlockedLog=Reset module BlockedLog for v7 algorithm -ShowNotAvailableOptions=Show unavailable options -HideNotAvailableOptions=Hide unavailable options -ErrorFoundDuringMigration=Error(s) were reported during the migration process so next step is not available. To ignore errors, you can click here, but the application or some features may not work correctly until the errors are resolved. -YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the install/upgrade pages have been disabled for security (directory renamed with .lock suffix).
-YouTryInstallDisabledByFileLock=The application tried to self-upgrade, but the install/upgrade pages have been disabled for security (by the existence of a lock file install.lock in the dolibarr documents directory).
-ClickHereToGoToApp=Click here to go to your application -ClickOnLinkOrRemoveManualy=Click on the following link. If you always see this same page, you must remove/rename the file install.lock in the documents directory. +MigrationEvents=Миграция на данни за събития за добавяне на собственик на събитие в определената таблица +MigrationEventsContact=Миграция на данни за събития за добавяне на контакт за събитие в определената таблица +MigrationRemiseEntity=Актуализиране на стойността на полето в обекта llx_societe_remise +MigrationRemiseExceptEntity=Актуализиране на стойността на полето в обекта llx_societe_remise_except +MigrationUserRightsEntity=Актуализиране на стойността на полето в обекта llx_user_rights +MigrationUserGroupRightsEntity=Актуализиране на стойността на полето в обекта llx_usergroup_rights +MigrationUserPhotoPath=Миграция на пътя до снимки на потребители +MigrationReloadModule=Презареждане на модул %s +MigrationResetBlockedLog=Нулиране на модула BlockedLog за алгоритъм v7 +ShowNotAvailableOptions=Показване на недостъпни опции +HideNotAvailableOptions=Скриване на недостъпни опции +ErrorFoundDuringMigration=По време на процеса на миграция са докладвани грешки, така че следващата стъпка не е възможна. За да игнорирате грешките, може да кликнете тук , но приложението или някои функции може да не работят правилно, докато грешките не бъдат отстранени. +YouTryInstallDisabledByDirLock=Приложението се опита да се самоактуализира, но страниците за инсталация / актуализация са били изключени от гледна точка на сигурност (директорията е преименувана с .lock суфикс).
+YouTryInstallDisabledByFileLock=Приложението се опита да се самоактуализира, но страниците за инсталация / актуализация са били изключени от гледна точка на сигурност (от наличието на заключващ файл install.lock в директорията documents на Dolibarr).
+ClickHereToGoToApp=Кликнете тук, за да отидете в приложението си +ClickOnLinkOrRemoveManualy=Кликнете върху следната връзка. Ако винаги виждате същата страница, трябва да премахнете / преименувате файла install.lock в директорията documents на Dolibarr. diff --git a/htdocs/langs/bg_BG/loan.lang b/htdocs/langs/bg_BG/loan.lang index 81bbc28a904..ca4ad3722d9 100644 --- a/htdocs/langs/bg_BG/loan.lang +++ b/htdocs/langs/bg_BG/loan.lang @@ -1,31 +1,31 @@ # Dolibarr language file - Source file is en_US - loan -Loan=Заем -Loans=Заеми -NewLoan=Нов Заем -ShowLoan=Показване на Заем -PaymentLoan=Плащане на Заем -LoanPayment=Плащане на Заем -ShowLoanPayment=Показване на плащането на Заем +Loan=Кредит +Loans=Кредити +NewLoan=Нов кредит +ShowLoan=Показване на кредит +PaymentLoan=Плащане по кредит +LoanPayment=Плащане по кредит +ShowLoanPayment=Показване на плащане по кредит LoanCapital=Капитал Insurance=Застраховка Interest=Лихва -Nbterms=Number of terms -Term=Term -LoanAccountancyCapitalCode=Accounting account capital -LoanAccountancyInsuranceCode=Accounting account insurance -LoanAccountancyInterestCode=Accounting account interest -ConfirmDeleteLoan=Потвърдете изтриването на този заем -LoanDeleted=Заемът е изтрит успешно -ConfirmPayLoan=Confirm classify paid this loan -LoanPaid=Заем Платен -ListLoanAssociatedProject=List of loan associated with the project -AddLoan=Create loan -FinancialCommitment=Financial commitment +Nbterms=Брой условия +Term=Условие +LoanAccountancyCapitalCode=Счетоводна сметка на капитал +LoanAccountancyInsuranceCode=Счетоводна сметка на застраховка +LoanAccountancyInterestCode=Счетоводна сметка за лихва +ConfirmDeleteLoan=Потвърдете изтриването на този кредит +LoanDeleted=Кредитът е успешно изтрит +ConfirmPayLoan=Потвърдете класифицирането на този кредит като платен +LoanPaid=Платен кредит +ListLoanAssociatedProject=Списък на кредити, свързани с проекта +AddLoan=Създаване на кредит +FinancialCommitment=Финансово задължение InterestAmount=Лихва -CapitalRemain=Capital remain +CapitalRemain=Оставащ капитал # Admin -ConfigLoan=Конфигурация на модула заем -LOAN_ACCOUNTING_ACCOUNT_CAPITAL=Accounting account capital by default -LOAN_ACCOUNTING_ACCOUNT_INTEREST=Accounting account interest by default -LOAN_ACCOUNTING_ACCOUNT_INSURANCE=Accounting account insurance by default -CreateCalcSchedule=Edit financial commitment +ConfigLoan=Конфигуриране на модула Кредити +LOAN_ACCOUNTING_ACCOUNT_CAPITAL=Счетоводна сметка на капитал по подразбиране +LOAN_ACCOUNTING_ACCOUNT_INTEREST=Счетоводна сметка на лихва по подразбиране +LOAN_ACCOUNTING_ACCOUNT_INSURANCE=Счетоводна сметка на застраховка по подразбиране +CreateCalcSchedule=Променяне на финансово задължение diff --git a/htdocs/langs/bg_BG/mails.lang b/htdocs/langs/bg_BG/mails.lang index 3e0699cfba3..4a4acf6b635 100644 --- a/htdocs/langs/bg_BG/mails.lang +++ b/htdocs/langs/bg_BG/mails.lang @@ -14,7 +14,7 @@ MailTo=Получател (и) MailToUsers=До потребител (и) MailCC=Копие до MailToCCUsers=Копие до потребител (и) -MailCCC=Явно копие до +MailCCC=Скрито копие до MailTopic=Тема на имейла MailText=Съобщение MailFile=Прикачени файлове @@ -24,7 +24,7 @@ BodyNotIn=Не е в съобщение ShowEMailing=Показване на масови имейли ListOfEMailings=Списък на масови имейли NewMailing=Нов масов имейл -EditMailing=Редактиране на масов имейл +EditMailing=Променяне на масов имейл ResetMailing=Повторно изпращане на масов имейл DeleteMailing=Изтриване на масов имейл DeleteAMailing=Изтриване на масов имейл diff --git a/htdocs/langs/bg_BG/main.lang b/htdocs/langs/bg_BG/main.lang index 7481d5cd06c..a475e9445a9 100644 --- a/htdocs/langs/bg_BG/main.lang +++ b/htdocs/langs/bg_BG/main.lang @@ -152,7 +152,7 @@ AddLink=Добавяне на връзка RemoveLink=Премахване на връзка AddToDraft=Добавяне към чернова Update=Актуализиране -Close=Затваряне +Close=Приключване CloseBox=Премахнете джаджата от таблото си за управление Confirm=Потвърждаване ConfirmSendCardByMail=Наистина ли искате да изпратите съдържанието на тази карта по имейл до %s ? @@ -161,7 +161,7 @@ Remove=Премахване Resiliate=Прекратяване Cancel=Анулиране Modify=Променяне -Edit=Редактиране +Edit=Променяне Validate=Валидиране ValidateAndApprove=Валидиране и одобряване ToValidate=За валидиране @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Контакти / адреси за този кон AddressesForCompany=Адреси за този контрагент ActionsOnCompany=Събития за този контрагент ActionsOnContact=Събития за този контакт / адрес +ActionsOnContract=Events for this contract ActionsOnMember=Събития за този член ActionsOnProduct=Събития за този продукт NActionsLate=%s закъснели @@ -524,7 +525,7 @@ Photos=Снимки AddPhoto=Добавяне на снимка DeletePicture=Изтриване на снимка ConfirmDeletePicture=Потвърждавате ли изтриването на снимката? -Login=Потребител +Login=Потребителско име LoginEmail=Потребител (имейл) LoginOrEmail=Потребител или имейл CurrentLogin=Текущ потребител @@ -759,6 +760,7 @@ LinkToSupplierProposal=Връзка към запитване към доста LinkToSupplierInvoice=Връзка към фактура за доставка LinkToContract=Връзка към договор LinkToIntervention=Връзка към интервенция +LinkToTicket=Link to ticket CreateDraft=Създаване на чернова SetToDraft=Назад към черновата ClickToEdit=Кликнете, за да редактирате diff --git a/htdocs/langs/bg_BG/members.lang b/htdocs/langs/bg_BG/members.lang index b847148cb92..d19bdf8cddb 100644 --- a/htdocs/langs/bg_BG/members.lang +++ b/htdocs/langs/bg_BG/members.lang @@ -12,7 +12,7 @@ FundationMembers=Членове на организацията ListOfValidatedPublicMembers=Списък на настоящите публични членове ErrorThisMemberIsNotPublic=Този член не е публичен ErrorMemberIsAlreadyLinkedToThisThirdParty=Друг член (име: %s , вход: %s вече е свързан с контрагента %s . Премахнете тази връзка първо, защото контрагента не може да бъде свързана само с член (и обратно). -ErrorUserPermissionAllowsToLinksToItselfOnly=От съображения за сигурност, трябва да ви бъдат предоставени права за редактиране на всички потребители да могат свързват член към потребител, който не е ваш. +ErrorUserPermissionAllowsToLinksToItselfOnly=От съображения за сигурност трябва да имате права за променяне на всички потребители, за да може да свържете член с потребител, който не сте вие. SetLinkToUser=Връзка към Dolibarr потребител SetLinkToThirdParty=Линк към Dolibarr контрагент MembersCards=Визитни картички на членове @@ -159,13 +159,13 @@ SubscriptionPayment=Плащане на членски внос LastSubscriptionDate=Date of latest subscription payment LastSubscriptionAmount=Amount of latest subscription MembersStatisticsByCountries=Статистика за членовете по държава -MembersStatisticsByState=Статистика за членовете по област +MembersStatisticsByState=Статистика за членове по област MembersStatisticsByTown=Статистика за членовете по град MembersStatisticsByRegion=Статистики на членовете по регион NbOfMembers=Брой членове NoValidatedMemberYet=Няма намерени потвърдени членове MembersByCountryDesc=Този екран показва статистическите данни за членовете по държави. Графиката зависи от онлайн услугата Google графика и е достъпна само ако имате свързаност с интернет. -MembersByStateDesc=Този екран показва статистическите данни за членовете по област. +MembersByStateDesc=Този екран показва статистически данни за членове по област / регион. MembersByTownDesc=Този екран показва статистическите данни за членовете по град. MembersStatisticsDesc=Изберете статистически данни, които искате да прочетете ... MenuMembersStats=Статистика diff --git a/htdocs/langs/bg_BG/oauth.lang b/htdocs/langs/bg_BG/oauth.lang index cafca379f6f..5f055216138 100644 --- a/htdocs/langs/bg_BG/oauth.lang +++ b/htdocs/langs/bg_BG/oauth.lang @@ -1,30 +1,30 @@ # Dolibarr language file - Source file is en_US - oauth -ConfigOAuth=Oauth Configuration -OAuthServices=OAuth services -ManualTokenGeneration=Manual token generation -TokenManager=Token manager -IsTokenGenerated=Is token generated ? -NoAccessToken=No access token saved into local database -HasAccessToken=A token was generated and saved into local database -NewTokenStored=Token received and saved -ToCheckDeleteTokenOnProvider=Click here to check/delete authorization saved by %s OAuth provider -TokenDeleted=Token deleted -RequestAccess=Click here to request/renew access and receive a new token to save -DeleteAccess=Click here to delete token -UseTheFollowingUrlAsRedirectURI=Use the following URL as the Redirect URI when creating your credential on your OAuth provider: -ListOfSupportedOauthProviders=Enter here credential provided by your OAuth2 provider. Only supported OAuth2 providers are visible here. This setup may be used by other modules that need OAuth2 authentication. -OAuthSetupForLogin=Page to generate an OAuth token -SeePreviousTab=See previous tab -OAuthIDSecret=OAuth ID and Secret -TOKEN_REFRESH=Token Refresh Present -TOKEN_EXPIRED=Token expired -TOKEN_EXPIRE_AT=Token expire at -TOKEN_DELETE=Delete saved token -OAUTH_GOOGLE_NAME=Oauth Google service -OAUTH_GOOGLE_ID=Oauth Google Id -OAUTH_GOOGLE_SECRET=Oauth Google Secret -OAUTH_GOOGLE_DESC=Go on this page then "Credentials" to create Oauth credentials -OAUTH_GITHUB_NAME=Oauth GitHub service -OAUTH_GITHUB_ID=Oauth GitHub Id -OAUTH_GITHUB_SECRET=Oauth GitHub Secret -OAUTH_GITHUB_DESC=Go on this page then "Register a new application" to create Oauth credentials +ConfigOAuth=OAuth конфигурация +OAuthServices=OAuth услуги +ManualTokenGeneration=Ръчно генериране на токен +TokenManager=Токен мениджър +IsTokenGenerated=Генериран ли е токен? +NoAccessToken=Няма запазен токен за достъп в локалната база данни +HasAccessToken=Беше генериран и съхранен токен в локалната база данни +NewTokenStored=Токенът е получен и съхранен +ToCheckDeleteTokenOnProvider=Кликнете тук, за да проверите / изтриете разрешение, съхранено от %s OAuth доставчик +TokenDeleted=Токенът е изтрит +RequestAccess=Кликнете тук, за да заявите / подновите достъпа и да получите нов токен, който да запазите +DeleteAccess=Кликнете тук, за да изтриете токенът +UseTheFollowingUrlAsRedirectURI=Използвайте следния URL адрес като URI за пренасочване, когато създавате идентификационни данни през вашият доставчик на OAuth: +ListOfSupportedOauthProviders=Въведете идентификационните данни, предоставени от вашият OAuth2 доставчик. Тук са изброени поддържаните OAuth2 доставчици. Тези услуги могат да бъдат използвани от други модули, които се нуждаят от OAuth2 удостоверяване. +OAuthSetupForLogin=Страница за генериране на OAuth токен +SeePreviousTab=Вижте предишния раздел +OAuthIDSecret=OAuth ID и Secret +TOKEN_REFRESH=Налично е опресняване на токен +TOKEN_EXPIRED=Токенът е изтекъл +TOKEN_EXPIRE_AT=Токенът изтича на +TOKEN_DELETE=Изтриване на съхранен токен +OAUTH_GOOGLE_NAME=OAuth услуга на Google +OAUTH_GOOGLE_ID=OAuth Google Id +OAUTH_GOOGLE_SECRET=OAuth Google Secret +OAUTH_GOOGLE_DESC=Отидете на тази страница след това „Удостоверения“, за да създадете OAuth идентификационни данни +OAUTH_GITHUB_NAME=OAuth услуга на GitHub +OAUTH_GITHUB_ID=OAuth GitHub Id +OAUTH_GITHUB_SECRET=OAuth GitHub Secret +OAUTH_GITHUB_DESC=Отидете на тази страница след това „Регистрирайте ново приложение“, за да създадете OAuth идентификационни данни diff --git a/htdocs/langs/bg_BG/opensurvey.lang b/htdocs/langs/bg_BG/opensurvey.lang index 9a08ed868ad..76e4292029d 100644 --- a/htdocs/langs/bg_BG/opensurvey.lang +++ b/htdocs/langs/bg_BG/opensurvey.lang @@ -1,17 +1,17 @@ # Dolibarr language file - Source file is en_US - opensurvey Survey=Анкета Surveys=Анкети -OrganizeYourMeetingEasily=Организиране на вашите срещи и анкети лесно. Първо изберете типа на гласуване ... -NewSurvey=Ново анкета -OpenSurveyArea=Зона Анкети -AddACommentForPoll=Можете да добавите коментар на анкетата ... +OrganizeYourMeetingEasily=Организирайте лесно срещите и анкетите си. Първо изберете тип анкета... +NewSurvey=Ново проучване +OpenSurveyArea=Зона за проучвания +AddACommentForPoll=Можете да добавите коментар към анкетата... AddComment=Добавяне на коментар CreatePoll=Създаване на анкета PollTitle=Тема на анкетата ToReceiveEMailForEachVote=Получаване на имейл за всеки глас -TypeDate=Дата -TypeClassic=Стандартно -OpenSurveyStep2=Изберете вашите дата между свободните дни (сиво). Избраните дни са зелени. Можете да махнете избрания преди това ден като отново кликнете върху него. +TypeDate=Срочна +TypeClassic=Стандартна +OpenSurveyStep2=Изберете вашите дати измежду свободните дни в сиво. Избраните дни ще бъдат оцветени в зелено. Може да отмените избора си за предварително избран ден като кликнете отново върху него. RemoveAllDays=Премахване на всички дни CopyHoursOfFirstDay=Копиране на часовете от първия ден RemoveAllHours=Премахване на всички часове @@ -19,43 +19,43 @@ SelectedDays=Избрани дни TheBestChoice=С най-много гласове в момента е TheBestChoices=С най-много гласове в момента са with=с -OpenSurveyHowTo=Ако сте съгласни да гласувате в тази анкета, трябва въведете името си, да изберете отговорите, които най-подходящи за вас и да потвърдите с бутон плюс в края на този ред. -CommentsOfVoters=Коментари на гласувалите -ConfirmRemovalOfPoll=Сигурни ли сте, че желаете да премахнете анкетата (и всички гласове) +OpenSurveyHowTo=Ако сте съгласни да гласувате в тази анкета, трябва да въведете името си, да изберете отговорите, които са най-подходящи за вас и да потвърдите с бутона плюс в края на реда. +CommentsOfVoters=Коментари на гласоподавателите +ConfirmRemovalOfPoll=Сигурни ли сте, че искате да премахнете тази анкета (и всички гласове)? RemovePoll=Премахване на анкета -UrlForSurvey=URL за директен достъп до акетата -PollOnChoice=You are creating a poll to make a multi-choice for a poll. First enter all possible choices for your poll: -CreateSurveyDate=Създаване на анкета със срок -CreateSurveyStandard=Създаване на стандартно гласуване +UrlForSurvey=URL адрес за директен достъп до анкетата +PollOnChoice=Създавате анкета, за да направите проучване с предварително дефинирани отговори. Първо въведете всички възможни отговори за вашата анкета: +CreateSurveyDate=Създаване на срочна анкета +CreateSurveyStandard=Създаване на стандартна анкета CheckBox=Отметка YesNoList=Списък (празно/да/не) PourContreList=Списък (празно/за/против) AddNewColumn=Добавяне на нова колона TitleChoice=Избор на етикет -ExportSpreadsheet=Експорт на разултатна таблица -ExpireDate=Крайната дата -NbOfSurveys=Брой на анкетите -NbOfVoters=Брой гласове +ExportSpreadsheet=Експортиране на таблица с резултати +ExpireDate=Крайна дата +NbOfSurveys=Брой анкети +NbOfVoters=Брой гласоподаватели SurveyResults=Резултати -PollAdminDesc=Позволено ви е да променяте всички линии за гласуване от тази анкета с бутон "Редактиране". Можете, също така, изтривате колона или линия с %s. Можете също да добавяте нова колона с %s. +PollAdminDesc=Имате право да променяте всички редове за гласуване от тази анкета с бутон 'Променяне'. Можете също така, да изтривате колона или линия с %s. Можете също да добавяте нова колона с %s. 5MoreChoices=Още 5 Against=Против -YouAreInivitedToVote=Поканени сте да гласувате за тази анкета -VoteNameAlreadyExists=Името вече е било използвано за тази анкета +YouAreInivitedToVote=Поканени сте да гласувате в тази анкета +VoteNameAlreadyExists=Това име вече беше използвано в тази анкета AddADate=Добавяне на дата AddStartHour=Добавяне на начален час AddEndHour=Добавяне на краен час votes=глас(а) -NoCommentYet=Все още няма публикувани коментари за тази анкета -CanComment=Гласуващите могат да коментират в анкетата -CanSeeOthersVote=Анкетираните могат да виждат гласа на другите хора. -SelectDayDesc=За всеки избран ден можете да изберете или не часовете за среща в следния формат:
- празно,
- "8h", "8H" или 8:00", за да зададете начален час на среща,
- "8-11", "8h-11h", "8H-11H" или "8:00-11:00", за да зададете час на край на среща,
- "8h15-11h15", "8H15-11H15" или "8:15-11:15" за същото нещо, но с минути. -BackToCurrentMonth=Обратно в текущия месец -ErrorOpenSurveyFillFirstSection=Не сте попълнили първата секция при създаването на анкетата -ErrorOpenSurveyOneChoice=Въведете поне една възможност за избор -ErrorInsertingComment=Възникна грешка при въвеждането на вашия коментар -MoreChoices=Въведете повече възможности за избор за анкетираните -SurveyExpiredInfo=The poll has been closed or voting delay has expired. -EmailSomeoneVoted=%s е попълнил ред.\nМожете да намерите вашата анкета на линка:\n%s -ShowSurvey=Show survey -UserMustBeSameThanUserUsedToVote=You must have voted and use the same user name that the one used to vote, to post a comment +NoCommentYet=Все още няма публикувани коментари в тази анкета +CanComment=Гласоподавателите могат да коментират в анкетата +CanSeeOthersVote=Гласоподавателите могат да виждат гласа на другите хора +SelectDayDesc=За всеки избран ден, може да изберете или не часовете за срещи в следния формат:
- празно,
- "8h", "8H" или "8:00", за да зададете начален час на срещата,
- "8- 11", "8h-11h", "8H-11H" или "8: 00-11:00", за да зададете начален и краен час на срещата,
-"8h15-11h15", "8H15-11H15" или "8:15-11:15" за същото, но с минути. +BackToCurrentMonth=Обратно към текущия месец +ErrorOpenSurveyFillFirstSection=Не сте попълнили първата секция при създаване на анкетата +ErrorOpenSurveyOneChoice=Въведете поне един избор +ErrorInsertingComment=Възникна грешка при въвеждане на вашия коментар +MoreChoices=Въведете повече възможности за избор на гласоподавателите +SurveyExpiredInfo=Анкетата е затворена или срокът за гласуване е изтекъл. +EmailSomeoneVoted=%s е попълнил ред.\nМожете да намерите вашата анкета на адрес:\n%s +ShowSurvey=Показване на проучването +UserMustBeSameThanUserUsedToVote=Трябва да сте гласували и да използвате същото потребителско име, с което сте гласували, за да публикувате коментар diff --git a/htdocs/langs/bg_BG/orders.lang b/htdocs/langs/bg_BG/orders.lang index 3379a9d3ed2..e346f7356c3 100644 --- a/htdocs/langs/bg_BG/orders.lang +++ b/htdocs/langs/bg_BG/orders.lang @@ -1,18 +1,18 @@ # Dolibarr language file - Source file is en_US - orders -OrdersArea=Зона за поръчки от клиенти -SuppliersOrdersArea=Зона за поръчки към доставчици -OrderCard=Карта за поръчка -OrderId=Поръчка Id +OrdersArea=Секция за поръчки за продажба +SuppliersOrdersArea=Секция за поръчки за покупка +OrderCard=Карта +OrderId=Идентификатор на поръчка Order=Поръчка PdfOrderTitle=Поръчка Orders=Поръчки -OrderLine=Ред за поръчка +OrderLine=Ред № OrderDate=Дата на поръчка OrderDateShort=Дата на поръчка OrderToProcess=Поръчка за обработване NewOrder=Нова поръчка -ToOrder=Направи поръчка -MakeOrder=Направи поръчка +ToOrder=Възлагане на поръчка +MakeOrder=Възлагане на поръчка SupplierOrder=Поръчка за покупка SuppliersOrders=Поръчки за покупка SuppliersOrdersRunning=Текущи поръчки за покупка @@ -53,8 +53,8 @@ StatusOrderRefused=Отхвърлена StatusOrderBilled=Фактурирана StatusOrderReceivedPartially=Частично получена StatusOrderReceivedAll=Изцяло получена -ShippingExist=Съществува пратка -QtyOrdered=Поръчано к-во +ShippingExist=Съществува доставка +QtyOrdered=Поръчано кол. ProductQtyInDraft=Количество на продукт в чернови поръчки ProductQtyInDraftOrWaitingApproved=Количество на продукт в чернови или одобрени поръчки, все още не поръчано MenuOrdersToBill=Доставени поръчки @@ -65,7 +65,7 @@ RefuseOrder=Отхвърляне на поръчка ApproveOrder=Одобряване на поръчка Approve2Order=Одобряване на поръчка (второ ниво) ValidateOrder=Валидиране на поръчка -UnvalidateOrder=Редактиране на поръчка +UnvalidateOrder=Променяне на поръчка DeleteOrder=Изтриване на поръчка CancelOrder=Анулиране на поръчка OrderReopened= Поръчка %s е повторно отворена @@ -87,7 +87,7 @@ OrdersStatisticsSuppliers=Статистика на поръчките за по NumberOfOrdersByMonth=Брой поръчки на месец AmountOfOrdersByMonthHT=Стойност на поръчки на месец (без ДДС) ListOfOrders=Списък на поръчки -CloseOrder=Затваряне на поръчка +CloseOrder=Приключване на поръчка ConfirmCloseOrder=Сигурни ли сте, че искате да поставите статус 'Доставена' на тази поръчка? След като поръчката бъде доставена, тя може да бъде фактурирана. ConfirmDeleteOrder=Сигурни ли сте, че искате да изтриете тази поръчка? ConfirmValidateOrder=Сигурни ли сте, че искате да валидирате тази поръчка под името %s? @@ -100,9 +100,9 @@ DraftOrders=Чернови поръчки DraftSuppliersOrders=Чернови поръчки за покупка OnProcessOrders=Поръчки в изпълнение RefOrder=Реф. поръчка -RefCustomerOrder=Реф. поръчка за клиент -RefOrderSupplier=Реф. поръчка за доставчик -RefOrderSupplierShort=Реф. поръчка доставчик +RefCustomerOrder=Реф. поръчка на клиент +RefOrderSupplier=Реф. поръчка на доставчик +RefOrderSupplierShort=Реф. поръчка на доставчик SendOrderByMail=Изпращане на поръчка по имейл ActionsOnOrder=Свързани събития NoArticleOfTypeProduct=Няма артикул от тип 'продукт', така че няма артикули годни за доставка по тази поръчка @@ -123,7 +123,7 @@ TypeContact_commande_internal_SALESREPFOLL=Представител просле TypeContact_commande_internal_SHIPPING=Представител проследяващ изпращането TypeContact_commande_external_BILLING=Контакт на клиент за фактура TypeContact_commande_external_SHIPPING=Контакт на клиент за доставка -TypeContact_commande_external_CUSTOMER=Контакт на клиент за поръчка +TypeContact_commande_external_CUSTOMER=Контакт на клиент проследяващ поръчката TypeContact_order_supplier_internal_SALESREPFOLL=Представител проследяващ поръчката за покупка TypeContact_order_supplier_internal_SHIPPING=Представител проследяващ изпращането TypeContact_order_supplier_external_BILLING=Контакт на доставчик за фактура @@ -154,5 +154,5 @@ CreateOrders=Създаване на поръчки ToBillSeveralOrderSelectCustomer=За да създадете фактура по няколко поръчки, кликнете първо на клиент, след това изберете '%s'. OptionToSetOrderBilledNotEnabled=Опцията (от модул 'Работен процес') за автоматична смяна на статуса на поръчката на 'Фактурирана' при валидиране на фактурата е изключена, така че ще трябва ръчно да промените статута на поръчка на 'Фактурирана'. IfValidateInvoiceIsNoOrderStayUnbilled=Ако фактурата не е валидирана, поръчката ще остане със статус 'Не фактурирана', докато фактурата не бъде валидирана. -CloseReceivedSupplierOrdersAutomatically=Затваряне на поръчката на '%s' автоматично, ако всички продукти са получени. +CloseReceivedSupplierOrdersAutomatically=Приключване на поръчката на '%s' автоматично, ако всички продукти са получени. SetShippingMode=Задайте режим на доставка diff --git a/htdocs/langs/bg_BG/other.lang b/htdocs/langs/bg_BG/other.lang index 0f11fd65898..aea81115f73 100644 --- a/htdocs/langs/bg_BG/other.lang +++ b/htdocs/langs/bg_BG/other.lang @@ -7,8 +7,8 @@ ToolsDesc=Всички инструменти, които не са включе Birthday=Рожден ден BirthdayDate=Рождена дата DateToBirth=Дата на раждане -BirthdayAlertOn=Известяването за рожден ден е активно -BirthdayAlertOff=Известяването за рожден ден е неактивно +BirthdayAlertOn=сигнал за рожден ден активен +BirthdayAlertOff=сигнал за рожден ден неактивен TransKey=Превод на ключа TransKey MonthOfInvoice=Месец (1÷12) от датата на фактурата TextMonthOfInvoice=Месец (текст) на датата на фактурата @@ -31,10 +31,10 @@ NextYearOfInvoice=Следваща година от датата на факт DateNextInvoiceBeforeGen=Дата на следващата фактура (преди генериране) DateNextInvoiceAfterGen=Дата на следващата фактура (след генериране) -Notify_ORDER_VALIDATE=Клиентската поръчка е валидирана -Notify_ORDER_SENTBYMAIL=Клиентската поръчка е изпратена на имейл +Notify_ORDER_VALIDATE=Поръчката за продажба е валидирана +Notify_ORDER_SENTBYMAIL=Поръчката за продажба е изпратена на имейл Notify_ORDER_SUPPLIER_SENTBYMAIL=Поръчката за покупка е изпратена на имейл -Notify_ORDER_SUPPLIER_VALIDATE=Поръчката за покупка е записана +Notify_ORDER_SUPPLIER_VALIDATE=Поръчката за покупка е валидирана Notify_ORDER_SUPPLIER_APPROVE=Поръчката за покупка е одобрена Notify_ORDER_SUPPLIER_REFUSE=Поръчката за покупка е отхвърлена Notify_PROPAL_VALIDATE=Търговското предложение е валидирано @@ -44,20 +44,20 @@ Notify_PROPAL_SENTBYMAIL=Търговското предложение е изп Notify_WITHDRAW_TRANSMIT=Оттегляне на трансмисия Notify_WITHDRAW_CREDIT=Оттегляне на кредит Notify_WITHDRAW_EMIT=Извършване на оттегляне -Notify_COMPANY_CREATE=Контрагента е създаден +Notify_COMPANY_CREATE=Контрагентът е създаден Notify_COMPANY_SENTBYMAIL=Имейли изпратени от картата на контрагента -Notify_BILL_VALIDATE=Клиентската фактура е валидирана -Notify_BILL_UNVALIDATE=Клиентската фактура е не валидирана -Notify_BILL_PAYED=Клиентската фактура е платена -Notify_BILL_CANCEL=Клиентската фактура е анулирана -Notify_BILL_SENTBYMAIL=Клиентската фактура е изпратена на имейл -Notify_BILL_SUPPLIER_VALIDATE=Доставната фактура е валидирана -Notify_BILL_SUPPLIER_PAYED=Доставната фактура е платена -Notify_BILL_SUPPLIER_SENTBYMAIL=Доставната фактура е изпратена на имейл -Notify_BILL_SUPPLIER_CANCELED=Доставната фактура е анулирана -Notify_CONTRACT_VALIDATE=Договора е валидиран +Notify_BILL_VALIDATE=Фактурата за продажба е валидирана +Notify_BILL_UNVALIDATE=Фактурата за продажба е отворена отново +Notify_BILL_PAYED=Фактурата за продажба е платена +Notify_BILL_CANCEL=Фактурата за продажба е анулирана +Notify_BILL_SENTBYMAIL=Фактурата за продажба е изпратена на имейл +Notify_BILL_SUPPLIER_VALIDATE=Фактурата за доставка е валидирана +Notify_BILL_SUPPLIER_PAYED=Фактурата за доставка е платена +Notify_BILL_SUPPLIER_SENTBYMAIL=Фактурата за доставка е изпратена на имейл +Notify_BILL_SUPPLIER_CANCELED=Фактурата за доставка е анулирана +Notify_CONTRACT_VALIDATE=Договорът е валидиран Notify_FICHEINTER_VALIDATE=Интервенцията е валидирана -Notify_FICHINTER_ADD_CONTACT=Добавен е контакт към интервенция +Notify_FICHINTER_ADD_CONTACT=Добавен е контакт към интервенцията Notify_FICHINTER_SENTBYMAIL=Интервенцията е изпратена на имейл Notify_SHIPPING_VALIDATE=Доставката е валидирана Notify_SHIPPING_SENTBYMAIL=Доставката е изпратена на имейл @@ -71,7 +71,7 @@ Notify_TASK_CREATE=Задачата е създадена Notify_TASK_MODIFY=Задачата е променена Notify_TASK_DELETE=Задачата е изтрита Notify_EXPENSE_REPORT_VALIDATE=Разходния отчет е валидиран (изисква се одобрение) -Notify_EXPENSE_REPORT_APPROVE=Разходния отчет е одобрен +Notify_EXPENSE_REPORT_APPROVE=Разходният отчет е одобрен Notify_HOLIDAY_VALIDATE=Молбата за отпуск е валидирана (изисква се одобрение) Notify_HOLIDAY_APPROVE=Молбата за отпуск е одобрена SeeModuleSetup=Вижте настройка на модул %s @@ -82,7 +82,7 @@ AttachANewFile=Прикачване на нов файл / документ LinkedObject=Свързан обект NbOfActiveNotifications=Брой известия (брой получени имейли) PredefinedMailTest=__(Здравейте)__,\nТова е тестово съобщение, изпратено до __EMAIL__.\nДвата реда са разделени, чрез въвеждане на нов ред.\n\n__USER_SIGNATURE__ -PredefinedMailTestHtml=__(Здравейте)__,\nТова е тестово съобщение (думата 'тестово' трябва да бъде с удебелен шрифт).
Двата реда са разделени, чрез въвеждане на нов ред.

__USER_SIGNATURE__ +PredefinedMailTestHtml=__(Здравейте)__,\nТова е тестово съобщение (думата 'тестово' трябва да бъде с удебелен шрифт).\nДвата реда са разделени, чрез въвеждане на нов ред.\n\n__USER_SIGNATURE__ PredefinedMailContentContract=__(Здравейте)__,\n\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ PredefinedMailContentSendInvoice=__(Здравейте)__,\n\nМоля, вижте приложената фактура __REF__\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__(Здравейте)__,\n\nБихме желали да Ви напомним, че фактура __REF__ все още не е платена. Копие на фактурата е прикачено към съобщението.\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ @@ -91,35 +91,35 @@ PredefinedMailContentSendSupplierProposal=__(Здравейте)__,\n\nМоля, PredefinedMailContentSendOrder=__(Здравейте)__\n\nМоля, вижте приложената поръчка __REF__\n\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ PredefinedMailContentSendSupplierOrder=__(Здравейте)__,\n\nМоля, вижте приложена нашата поръчка __REF__\n\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ PredefinedMailContentSendSupplierInvoice=__(Здравейте)__,\n\nМоля, вижте приложената фактура __REF__\n\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ -PredefinedMailContentSendShipping=__(Здравейте)__,\n\nМоля, вижте приложената пратка __REF__\n\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ +PredefinedMailContentSendShipping=__(Здравейте)__,\n\nМоля, вижте приложената доставка __REF__\n\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ PredefinedMailContentSendFichInter=__(Здравейте)__,\n\nМоля, вижте приложената интервенция __REF__\n\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ PredefinedMailContentThirdparty=__(Здравейте)__,\n\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ PredefinedMailContentContact=__(Здравейте)__,\n\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ PredefinedMailContentUser=__(Здравейте)__,\n\n\n__(Поздрави)__,\n\n__USER_SIGNATURE__ -PredefinedMailContentLink=Можете да кликнете върху връзката по-долу, за да направите плащане, в случай, че не сте го извършили.\n\n%s\n\n +PredefinedMailContentLink=Може да кликнете върху връзката по-долу, за да направите плащане, в случай, че не сте го извършили.\n\n%s\n\n DemoDesc=Dolibarr е компактна ERP / CRM система, която поддържа различни работни модули. Демонстрация, показваща всички модули, няма смисъл, тъй като такъв сценарий никога не се случва (стотици модули са на разположение). Така че, няколко демо профила са налични. -ChooseYourDemoProfil=Изберете демо профила, която най-добре отговаря на вашите нужди ... -ChooseYourDemoProfilMore=... или създайте свой собствен профил
(свободен избор на модули) -DemoFundation=Управление на членовете на организацията -DemoFundation2=Управление на членовете и банковата сметка на организацията +ChooseYourDemoProfil=Изберете демо профила, който най-добре отговаря на вашите нужди... +ChooseYourDemoProfilMore=...или създайте свой собствен профил
(свободен избор на модули) +DemoFundation=Управление на членове на организация +DemoFundation2=Управление на членове и банкова сметка на организация DemoCompanyServiceOnly=Фирма или фрийлансър продаващи само услуги DemoCompanyShopWithCashDesk=Управление на магазин с каса -DemoCompanyProductAndStocks=Фирма продаваща продукти в магазин +DemoCompanyProductAndStocks=Фирма продаваща продукти с магазин DemoCompanyAll=Фирма с множество дейности (всички основни модули) CreatedBy=Създадено от %s ModifiedBy=Променено от %s ValidatedBy=Валидирано от %s -ClosedBy=Затворено от %s +ClosedBy=Приключено от %s CreatedById=Потребител, който е създал -ModifiedById=Потребител, който е направил последната промяна +ModifiedById=Потребител, който е направил последна промяна ValidatedById=Потребител, който е валидирал CanceledById=Потребител, който е анулирал -ClosedById=Потребител, който е затворил +ClosedById=Потребител, който е приключил CreatedByLogin=Потребител, който е създал -ModifiedByLogin=Потребител, който е направил последната промяна +ModifiedByLogin=Потребител, който е направил последна промяна ValidatedByLogin=Потребител, който е валидирал CanceledByLogin=Потребител, който е анулирал -ClosedByLogin=Потребител, който е затворил +ClosedByLogin=Потребител, който е приключил FileWasRemoved=Файл %s е премахнат DirWasRemoved=Директория %s е премахната FeatureNotYetAvailable=Функцията все още не е налице в текущата версия @@ -170,28 +170,28 @@ SizeUnitinch=инч SizeUnitfoot=фут SizeUnitpoint=точка BugTracker=Регистър на бъгове -SendNewPasswordDesc=Този формуляр ви позволява да заявите нова парола. Тя ще бъде изпратена на вашия имейл адрес.
Промяната ще влезе в сила, след като кликнете върху връзката за потвърждение в имейла.
Проверете си пощата. +SendNewPasswordDesc=Този формуляр позволява да заявите нова парола. Тя ще бъде изпратена на вашият имейл адрес.
Промяната ще влезе в сила след като кликнете върху връзката за потвърждение в имейла.
Проверете си пощата. BackToLoginPage=Назад към страницата за вход -AuthenticationDoesNotAllowSendNewPassword=Режимът за удостоверяване е %s.
В този режим, системата не може да знае, нито да промени паролата ви.
Свържете се с вашия системен администратор, ако искате да промените паролата си. +AuthenticationDoesNotAllowSendNewPassword=Режимът за удостоверяване е %s.
В този режим, системата не може да знае, нито да промени паролата ви.
Свържете се с вашият системен администратор, ако искате да промените паролата си. EnableGDLibraryDesc=Инсталирайте или активирайте GD библиотеката на вашата PHP инсталация, за да използвате тази опция. ProfIdShortDesc=Проф. Id %s е информация, в зависимост от държавата на контрагента.
Например, за държавата %s, това е код %s. -DolibarrDemo=Dolibarr ERP/CRM демо +DolibarrDemo=Dolibarr ERP / CRM демо StatsByNumberOfUnits=Статистика за общото количество продукти / услуги -StatsByNumberOfEntities=Статистика за броя на свързаните документи (брой фактури, поръчка ...) +StatsByNumberOfEntities=Статистика за броя на свързаните документи (брой фактури, поръчки...) NumberOfProposals=Брой търговски предложения -NumberOfCustomerOrders=Брой клиентски поръчки -NumberOfCustomerInvoices=Брой клиентски фактури -NumberOfSupplierProposals=Брой доставни фактури +NumberOfCustomerOrders=Брой поръчки за продажба +NumberOfCustomerInvoices=Брой фактури за продажба +NumberOfSupplierProposals=Брой фактури за доставка NumberOfSupplierOrders=Брой поръчки за покупка -NumberOfSupplierInvoices=Брой доставни фактури +NumberOfSupplierInvoices=Брой фактури за доставка NumberOfContracts=Брой договори -NumberOfUnitsProposals=Брой единици по търговски предложения -NumberOfUnitsCustomerOrders=Брой единици по клиентски поръчки -NumberOfUnitsCustomerInvoices=Брой единици по клиентски фактури -NumberOfUnitsSupplierProposals=Брой единици по запитвания към доставчици -NumberOfUnitsSupplierOrders=Брой единици по поръчки за покупка -NumberOfUnitsSupplierInvoices=Брой единици по доставни фактури -NumberOfUnitsContracts=Брой единици по договори +NumberOfUnitsProposals=Брой по търговски предложения +NumberOfUnitsCustomerOrders=Брой по поръчки за продажба +NumberOfUnitsCustomerInvoices=Брой по фактури за продажба +NumberOfUnitsSupplierProposals=Брой по запитвания към доставчици +NumberOfUnitsSupplierOrders=Брой по поръчки за покупка +NumberOfUnitsSupplierInvoices=Брой по фактури за доставка +NumberOfUnitsContracts=Брой по договори EMailTextInterventionAddedContact=Възложена ви е нова интервенция %s. EMailTextInterventionValidated=Интервенция %s е валидирана. EMailTextInvoiceValidated=Фактура %s е валидирана. @@ -200,7 +200,7 @@ EMailTextProposalValidated=Търговско предложение %s е ва EMailTextProposalClosedSigned=Търговско предложение %s е подписано. EMailTextOrderValidated=Поръчка %s е валидирана. EMailTextOrderApproved=Поръчка %s е одобрена. -EMailTextOrderValidatedBy=Поръчка %s е записана от %s. +EMailTextOrderValidatedBy=Поръчка %s е валидирана от %s. EMailTextOrderApprovedBy=Поръчка %s е одобрена от %s. EMailTextOrderRefused=Поръчка %s е отхвърлена. EMailTextOrderRefusedBy=Поръчка %s е отхвърлена от %s. @@ -209,29 +209,29 @@ EMailTextExpenseReportValidated=Разходен отчет %s е валидир EMailTextExpenseReportApproved=Разходен отчет %s е одобрен. EMailTextHolidayValidated=Молба за отпуск %s е валидирана. EMailTextHolidayApproved=Молба за отпуск %s е одобрена. -ImportedWithSet=Набор от данни за импорт +ImportedWithSet=Набор от данни за импортиране DolibarrNotification=Автоматично уведомяване -ResizeDesc=Въведете нова ширина ИЛИ нова височина. Съотношението ще се запази по време преоразмеряването... +ResizeDesc=Въведете нова ширина или нова височина. Съотношението ще се запази по време преоразмеряването... NewLength=Нова ширина NewHeight=Нова височина NewSizeAfterCropping=Нов размер след изрязване DefineNewAreaToPick=Определете нова област на изображението, за да изберете (ляв клик върху изображението, след което плъзнете, докато стигнете до противоположния ъгъл) CurrentInformationOnImage=Този инструмент е предназначен да ви помогне да преоразмерите или изрежете изображение. Това е информацията за текущото редактирано изображение. ImageEditor=Редактор на изображения -YouReceiveMailBecauseOfNotification=Получавате това съобщение, защото вашият имейл е добавен към списъка с цел информиране за специални събития в %s софтуер на %s. +YouReceiveMailBecauseOfNotification=Здравейте,\nПолучавате това съобщение, тъй като вашият имейл адрес е добавен към списък целящ информиране за конкретни събития в %s софтуер на %s.\n YouReceiveMailBecauseOfNotification2=Това събитие е следното: -ThisIsListOfModules=Това е списък на модулите, предварително избрани за този демонстрационен профил (само най-основните модули са видими в тази демонстрация). Редактирайте, ако е необходимо, за да имате по-персонализирано демо и кликнете върху "Старт". -UseAdvancedPerms=Използване на разширени разрешения на някои модули +ThisIsListOfModules=Това е списък на модулите, предварително избрани за този демонстрационен профил (само най-основните модули са видими в тази демонстрация). Променете това, ако е необходимо, за да имате по-персонализирано демо и кликнете върху "Старт". +UseAdvancedPerms=Използване на разширени права на някои модули FileFormat=Файлов формат SelectAColor=Избиране на цвят AddFiles=Добавяне на файлове StartUpload=Стартиране на качване CancelUpload=Анулиране на качване -FileIsTooBig=Файлът е твърде голям +FileIsTooBig=Файловете са твърде големи PleaseBePatient=Моля, бъдете търпеливи... NewPassword=Нова парола ResetPassword=Възстановяване на парола -RequestToResetPasswordReceived=Получена е заявка за промяна на паролата ви. +RequestToResetPasswordReceived=Получена е заявка за промяна на вашата парола. NewKeyIs=Това са новите ви данни за вход NewKeyWillBe=Вашите нови данни за вход ще бъдат ClickHereToGoTo=Кликнете тук, за да отидете на %s @@ -239,29 +239,29 @@ YouMustClickToChange=Необходимо е първо да кликнете в ForgetIfNothing=Ако не сте заявили промяната, просто забравете за този имейл. Вашите идентификационни данни се съхраняват на сигурно място. IfAmountHigherThan=Ако сумата e по-висока от %s SourcesRepository=Хранилище за източници -Chart=Диаграма +Chart=Графика PassEncoding=Кодиране на пароли -PermissionsAdd=Разрешенията са добавени -PermissionsDelete=Разрешенията са премахнати -YourPasswordMustHaveAtLeastXChars=Вашата парола трябва да има поне %s символа +PermissionsAdd=Правата са добавени +PermissionsDelete=Правата са премахнати +YourPasswordMustHaveAtLeastXChars=Вашата парола трябва да съдържа поне %s символа YourPasswordHasBeenReset=Вашата парола е успешно възстановена. ApplicantIpAddress=IP адрес на заявителя SMSSentTo=Изпратен е SMS на %s MissingIds=Липсват идентификатори -ThirdPartyCreatedByEmailCollector=Контрагент, създаден чрез имейл колектор от имейл MSGID %s -ContactCreatedByEmailCollector=Контактът/адресът, създаден чрез имейл колектор от имейл MSGID %s -ProjectCreatedByEmailCollector=Проект, създаден чрез имейл колектор от имейл MSGID %s -TicketCreatedByEmailCollector=Тикет, създаден чрез имейл колектор от имейл MSGID %s +ThirdPartyCreatedByEmailCollector=Контрагентът е създаден, чрез имейл колектор от имейл MSGID %s +ContactCreatedByEmailCollector=Контактът / адресът е създаден, чрез имейл колектор от имейл MSGID %s +ProjectCreatedByEmailCollector=Проектът е създаден, чрез имейл колектор от имейл MSGID %s +TicketCreatedByEmailCollector=Тикетът е създаден, чрез имейл колектор от имейл MSGID %s ##### Export ##### -ExportsArea=Секция за експорт +ExportsArea=Секция за експортиране AvailableFormats=Налични формати LibraryUsed=Използвана библиотека LibraryVersion=Версия на библиотеката -ExportableDatas=Данни за експорт -NoExportableData=Няма данни за експорт (няма модули със заредени данни за експорт или липсват разрешения) +ExportableDatas=Експортни данни +NoExportableData=Няма експортни данни (няма модули със заредени данни за експортиране или липсват права) ##### External sites ##### -WebsiteSetup=Настройка на Уебсайт модула +WebsiteSetup=Настройка на модул уебсайт WEBSITE_PAGEURL=URL адрес на страницата WEBSITE_TITLE=Заглавие WEBSITE_DESCRIPTION=Описание diff --git a/htdocs/langs/bg_BG/products.lang b/htdocs/langs/bg_BG/products.lang index 751313cdc4d..e7fb38991c4 100644 --- a/htdocs/langs/bg_BG/products.lang +++ b/htdocs/langs/bg_BG/products.lang @@ -1,7 +1,8 @@ # Dolibarr language file - Source file is en_US - products -ProductRef=Реф. № на продукт -ProductLabel=Етикет на продукта +ProductRef=Реф. продукт +ProductLabel=Етикет на продукт ProductLabelTranslated=Преведен продуктов етикет +ProductDescription=Product description ProductDescriptionTranslated=Преведено продуктово описание ProductNoteTranslated=Преведена продуктова бележка ProductServiceCard=Карта @@ -11,7 +12,7 @@ Products=Продукти Services=Услуги Product=Продукт Service=Услуга -ProductId=Идентификатор на Продукт/Услуга +ProductId=Идентификатор на Продукт / Услуга Create=Създаване Reference=Референция NewProduct=Нов продукт @@ -31,19 +32,19 @@ ProductsPipeServices=Продукти | Услуги ProductsOnSaleOnly=Продукти само за продажба ProductsOnPurchaseOnly=Продукти само за покупка ProductsNotOnSell=Продукти, които не са за продажба, и не са за покупка -ProductsOnSellAndOnBuy=Продукти за продажба или покупка +ProductsOnSellAndOnBuy=Продукти за продажба и за покупка ServicesOnSaleOnly=Услуги само за продажба ServicesOnPurchaseOnly=Услуги само за покупка ServicesNotOnSell=Услуги, които не са за продажба, и не са за покупка -ServicesOnSellAndOnBuy=Услуги за продажба или покупка +ServicesOnSellAndOnBuy=Услуги за продажба и за покупка LastModifiedProductsAndServices=Продукти / Услуги: %s последно променени -LastRecordedProducts=Продукти: %s последно регистрирани -LastRecordedServices=Услуги: %s последно регистрирани +LastRecordedProducts=Продукти: %s последно добавени +LastRecordedServices=Услуги: %s последно добавени CardProduct0=Продукт CardProduct1=Услуга Stock=Наличност MenuStocks=Наличности -Stocks=Наличност и движения +Stocks=Наличности и местоположение (склад) на продуктите Movements=Движения Sell=Продажба Buy=Покупка @@ -61,7 +62,7 @@ ProductStatusNotOnBuyShort=Не се купува UpdateVAT=Актуализиране на ДДС UpdateDefaultPrice=Актуализиране на цената по подразбиране UpdateLevelPrices=Актуализиране на цени за всяко ниво -AppliedPricesFrom=Приложен от +AppliedPricesFrom=Приложена на SellingPrice=Продажна цена SellingPriceHT=Продажна цена (без ДДС) SellingPriceTTC=Продажна цена (с ДДС) @@ -72,21 +73,21 @@ SoldAmount=Стойност на продажбите PurchasedAmount=Стойност на покупките NewPrice=Нова цена MinPrice=Минимална продажна цена -EditSellingPriceLabel=Редактиране на етикета на продажната цена +EditSellingPriceLabel=Променяне на етикета на продажната цена CantBeLessThanMinPrice=Продажната цена не може да бъде по-ниска от минимално допустимата за този продукт/услуга (%s без ДДС). Това съобщение може да се появи, ако въведете твърде голяма отстъпка. ContractStatusClosed=Затворен -ErrorProductAlreadyExists=Вече съществува продукт/услуга с реф. № %s. +ErrorProductAlreadyExists=Вече съществува продукт / услуга с реф. %s. ErrorProductBadRefOrLabel=Грешна стойност за референция или етикет. ErrorProductClone=Възникна проблем при опит за клониране на продукта/услугата. ErrorPriceCantBeLowerThanMinPrice=Грешка, цената не може да бъде по-ниска от минималната цена. Suppliers=Доставчици -SupplierRef=Реф. № (SKU) +SupplierRef=Реф. (SKU) ShowProduct=Показване на продукт ShowService=Показване на услуга -ProductsAndServicesArea=Зона за Продукти | Услуги -ProductsArea=Зона за Продукти -ServicesArea=Зона за Услуги -ListOfStockMovements=Списък на движения на стокови наличности +ProductsAndServicesArea=Секция за продукти и услуги +ProductsArea=Секция за продукти +ServicesArea=Секция за услуги +ListOfStockMovements=Списък с движения на наличности BuyingPrice=Покупна цена PriceForEachProduct=Продукти със специфични цени SupplierCard=Карта @@ -96,7 +97,7 @@ BarcodeType=Тип баркод SetDefaultBarcodeType=Задаване на тип баркод BarcodeValue=Баркод стойност NoteNotVisibleOnBill=Бележка (не се вижда на фактури, предложения...) -ServiceLimitedDuration=Ако продуктът е услуга с ограничен срок на действие: +ServiceLimitedDuration=Ако продуктът е услуга с ограничена продължителност: MultiPricesAbility=Множество ценови сегменти за продукт / услуга (всеки клиент е в един ценови сегмент) MultiPricesNumPrices=Брой цени AssociatedProductsAbility=Активиране на виртуални продукти (комплекти) @@ -114,52 +115,52 @@ ListOfProductsServices=Списък на продукти / услуги ProductAssociationList=Списък на продукти / услуги, които са компонент(и) на този виртуален продукт (комплект) ProductParentList=Списък на продукти / услуги с този продукт като компонент ErrorAssociationIsFatherOfThis=Един от избраните продукти е основен за текущия продукт -DeleteProduct=Изтриване на продукт/услуга -ConfirmDeleteProduct=Сигурни ли сте, че желаете да изтриете този продукт/услуга? -ProductDeleted=Продукт/услуга %s е изтрит/а от базата данни. +DeleteProduct=Изтриване на продукт / услуга +ConfirmDeleteProduct=Сигурни ли сте, че желаете да изтриете този продукт / услуга? +ProductDeleted=Продукт / услуга %s е изтрит(а) от базата данни. ExportDataset_produit_1=Продукти ExportDataset_service_1=Услуги ImportDataset_produit_1=Продукти ImportDataset_service_1=Услуги -DeleteProductLine=Изтриване на продуктова линия -ConfirmDeleteProductLine=Сигурни ли сте, че искате да изтриете тази продуктова линия? +DeleteProductLine=Изтриване на продуктов ред +ConfirmDeleteProductLine=Сигурни ли сте, че искате да изтриете този продуктов ред? ProductSpecial=Специален QtyMin=Минимално количество за покупка PriceQtyMin=Минимална цена за количество PriceQtyMinCurrency=Цена (във валута) за това количество (без отстъпка) -VATRateForSupplierProduct=Ставка на ДДС (за този доставчик/продукт) +VATRateForSupplierProduct=Ставка на ДДС (за този доставчик / продукт) DiscountQtyMin=Отстъпка за това количество -NoPriceDefinedForThisSupplier=Няма дефинирана цена/количество за този доставчик/продукт -NoSupplierPriceDefinedForThisProduct=Няма дефинирана цена/количество за този продукт +NoPriceDefinedForThisSupplier=Няма дефинирана цена / количество за този доставчик / продукт +NoSupplierPriceDefinedForThisProduct=Няма дефинирана цена / количество за този продукт PredefinedProductsToSell=Предварително определен продукт PredefinedServicesToSell=Предварително определена услуга -PredefinedProductsAndServicesToSell=Предварително определени продукти/услуги за продажба +PredefinedProductsAndServicesToSell=Предварително определени продукти / услуги за продажба PredefinedProductsToPurchase=Предварително определен продукт за покупка PredefinedServicesToPurchase=Предварително определена услуга за покупка -PredefinedProductsAndServicesToPurchase=Предварително определени продукти/услуги за покупка -NotPredefinedProducts=Не предварително определени продукти/услуги -GenerateThumb=Генериране на палец +PredefinedProductsAndServicesToPurchase=Предварително определени продукти / услуги за покупка +NotPredefinedProducts=Не предварително определени продукти / услуги +GenerateThumb=Генериране на миниатюра ServiceNb=Услуга #%s -ListProductServiceByPopularity=Списък на продукти/услуги по популярност +ListProductServiceByPopularity=Списък на продукти / услуги по популярност ListProductByPopularity=Списък на продукти по популярност ListServiceByPopularity=Списък на услуги по популярност Finished=Произведен продукт -RowMaterial=Суров материал -ConfirmCloneProduct=Сигурни ли сте, че искате да клонирате този продукт/услуга %s? -CloneContentProduct=Клониране на цялата основна информация за продукт/услуга +RowMaterial=Суровина +ConfirmCloneProduct=Сигурни ли сте, че искате да клонирате този продукт / услуга %s? +CloneContentProduct=Клониране на цялата основна информация за продукт / услуга ClonePricesProduct=Клониране на цени -CloneCompositionProduct=Клониране на виртуален продукт/услуга +CloneCompositionProduct=Клониране на виртуален продукт / услуга CloneCombinationsProduct=Клониране на варианти на продукта ProductIsUsed=Този продукт се използва -NewRefForClone=Реф. № на нов продукт/услуга +NewRefForClone=Реф. на нов продукт / услуга SellingPrices=Продажни цени BuyingPrices=Покупни цени CustomerPrices=Клиентски цени SuppliersPrices=Доставни цени -SuppliersPricesOfProductsOrServices=Доставни цени (на продукти/услуги) +SuppliersPricesOfProductsOrServices=Доставни цени (на продукти / услуги) CustomCode=Митнически / Стоков / ХС код CountryOrigin=Държава на произход -Nature=Естество на продукта (материал / завършен) +Nature=Характер на продукта (материал / завършен) ShortLabel=Кратък етикет Unit=Мярка p=е. @@ -194,10 +195,10 @@ unitLM=Линеен метър unitM2=Квадратен метър unitM3=Кубичен метър unitL=Литър -ProductCodeModel=Реф. шаблон на продукт -ServiceCodeModel=Реф. шаблон на услуга +ProductCodeModel=Шаблон за генериране на реф. продукт +ServiceCodeModel=Шаблон за генериране на реф. услуга CurrentProductPrice=Текуща цена -AlwaysUseNewPrice=Винаги да се използва текуща цена на продукт/услуга +AlwaysUseNewPrice=Винаги да се използва текуща цена на продукт / услуга AlwaysUseFixedPrice=Използване на фиксирана цена PriceByQuantity=Различни цени за количество DisablePriceByQty=Деактивиране на цени за количество @@ -213,8 +214,8 @@ VariantLabelExample=Пример: Цвят Build=Произвеждане ProductsMultiPrice=Продукти и цени за всеки ценови сегмент ProductsOrServiceMultiPrice=Клиентски цени (за продукт или услуги, мулти цени) -ProductSellByQuarterHT=Оборот на продукти за тримесечие преди данъчно облагане -ServiceSellByQuarterHT=Оборот на услуги за тримесечие преди данъчно облагане +ProductSellByQuarterHT=Оборот на продукти за тримесечие без ДДС +ServiceSellByQuarterHT=Оборот на услуги за тримесечие без ДДС Quarter1=Първо тримесечие Quarter2=Второ тримесечие Quarter3=Трето тримесечие @@ -233,7 +234,7 @@ BarCodeDataForProduct=Информация за баркод на продукт BarCodeDataForThirdparty=Информация за баркод на контрагент %s: ResetBarcodeForAllRecords=Определяне на стойността на баркода за всеки запис (това също ще възстанови стойността на баркода, която е вече дефинирана с нови стойности) PriceByCustomer=Различни цени за всеки клиент -PriceCatalogue=Една продажна цена за продукт/услуга +PriceCatalogue=Една продажна цена за продукт / услуга PricingRule=Правила за продажни цени AddCustomerPrice=Добавяне на цена за клиент ForceUpdateChildPriceSoc=Определяне на една и съща цена за филиали на клиента @@ -250,8 +251,8 @@ PriceExpressionEditorHelp5=Налични глобални стойности: PriceMode=Ценови режим PriceNumeric=Номер DefaultPrice=Цена по подразбиране -ComposedProductIncDecStock=Увеличаване/Намаляване на наличност при промяна на основен продукт -ComposedProduct=Наследени продукти +ComposedProductIncDecStock=Увеличаване / намаляване на наличност при промяна на основен продукт +ComposedProduct=Съставни продукти MinSupplierPrice=Минимална покупната цена MinCustomerPrice=Минимална продажна цена DynamicPriceConfiguration=Динамична ценова конфигурация @@ -270,11 +271,11 @@ GlobalVariableUpdaterHelpFormat1=Формат на запитването {"URL" UpdateInterval=Интервал на актуализиране (минути) LastUpdated=Последна актуализация CorrectlyUpdated=Правилно актуализирано -PropalMergePdfProductActualFile=Файловете използвани за добавяне в PDF Azur +PropalMergePdfProductActualFile=Файловете използвани за добавяне в PDF Azur са PropalMergePdfProductChooseFile=Избиране на PDF файлове -IncludingProductWithTag=Включително продукт/услуга с таг/категория +IncludingProductWithTag=Включително продукт / услуга с таг / категория DefaultPriceRealPriceMayDependOnCustomer=Цена по подразбиране, реалната цена може да зависи от клиента -WarningSelectOneDocument=Моля изберете поне един документ +WarningSelectOneDocument=Моля, изберете поне един документ DefaultUnitToShow=Мярка NbOfQtyInProposals=Количество в предложенията ClinkOnALinkOfColumn=Кликнете върху връзката от колона %s, за да получите подробен изглед... @@ -290,41 +291,41 @@ SizeUnits=Мярка за размер DeleteProductBuyPrice=Изтриване на покупна цена ConfirmDeleteProductBuyPrice=Сигурни ли сте, че искате да изтриете тази покупна цена? SubProduct=Подпродукт -ProductSheet=Лист на продукт -ServiceSheet=Лист на услуга +ProductSheet=Спецификация на продукт +ServiceSheet=Спецификация на услуга PossibleValues=Възможни стойности GoOnMenuToCreateVairants=Отидете в менюто %s - %s, за да подготвите атрибутите на варианта (като цветове, размер, ...) UseProductFournDesc=Добавяне на функция за дефиниране на описания на продуктите, определени от доставчици като допълнение към описанията за клиенти ProductSupplierDescription=Описание на продукта от доставчик #Attributes -VariantAttributes=Атрибути на варианти -ProductAttributes=Атрибути на продуктови варианти -ProductAttributeName=Атрибут на варианта %s -ProductAttribute=Атрибут на варианта +VariantAttributes=Атрибути на вариант +ProductAttributes=Атрибути на вариант за продукти +ProductAttributeName=Атрибут на вариант %s +ProductAttribute=Атрибут на вариант ProductAttributeDeleteDialog=Сигурни ли сте, че искате да изтриете този атрибут? Всички стойности ще бъдат изтрити. ProductAttributeValueDeleteDialog=Сигурни ли сте, че искате да изтриете стойността '%s' с реф. № '%s' на този атрибут? ProductCombinationDeleteDialog=Сигурни ли сте, че искате да изтриете варианта на продукта '%s'? ProductCombinationAlreadyUsed=Възникна грешка при изтриването на варианта. Моля, проверете дали не се използва в някой обект ProductCombinations=Варианти PropagateVariant=Размножаване на варианти -HideProductCombinations=Скриване на продуктовите варианти в селектора за продукти +HideProductCombinations=Скриване на продуктови варианти в селектора за продукти ProductCombination=Вариант NewProductCombination=Нов вариант -EditProductCombination=Редактиране на вариант +EditProductCombination=Промяна на вариант NewProductCombinations=Нови варианти -EditProductCombinations=Редактиране на варианти +EditProductCombinations=Промяна на варианти SelectCombination=Избиране на комбинация ProductCombinationGenerator=Генератор на варианти Features=Характеристики -PriceImpact=Влияние върху цена -WeightImpact=Влияние върху тегло +PriceImpact=Въздействие върху цената +WeightImpact=Въздействие върху теглото NewProductAttribute=Нов атрибут NewProductAttributeValue=Нова стойност на атрибута ErrorCreatingProductAttributeValue=Възникна грешка при създаването на стойността на атрибута. Това може да се дължи на факта, че вече съществува стойност с тази референция ProductCombinationGeneratorWarning=Ако продължите, преди да генерирате нови варианти, всички предишни ще бъдат ИЗТРИТИ. Вече съществуващите ще бъдат актуализирани с новите стойности TooMuchCombinationsWarning=Генерирането на много варианти може да доведе до висок разход на процесорно време, използвана памет, поради което Dolibarr няма да може да ги създаде. Активирането на опцията '%s' може да помогне за намаляване на използването на паметта. DoNotRemovePreviousCombinations=Не премахва предишни варианти -UsePercentageVariations=Използване на процентни вариации +UsePercentageVariations=Използване на процентни изменения PercentageVariation=Процентно изменение ErrorDeletingGeneratedProducts=Възникна грешка при опит за изтриване на съществуващи продуктови варианти NbOfDifferentValues=Брой различни стойности diff --git a/htdocs/langs/bg_BG/projects.lang b/htdocs/langs/bg_BG/projects.lang index 1cc17d3e576..b69000cd9f2 100644 --- a/htdocs/langs/bg_BG/projects.lang +++ b/htdocs/langs/bg_BG/projects.lang @@ -1,30 +1,30 @@ # Dolibarr language file - Source file is en_US - projects RefProject=Реф. проект ProjectRef=Проект реф. -ProjectId=Проект № -ProjectLabel=Име на проект +ProjectId=Идентификатор на проект +ProjectLabel=Етикет на проект ProjectsArea=Секция за проекти ProjectStatus=Статус на проект SharedProject=Всички PrivateProject=Участници в проекта ProjectsImContactFor=Проекти, в които съм определен за контакт -AllAllowedProjects=Всеки проект, който мога да видя (мой и публичен) +AllAllowedProjects=Всеки проект, който мога да прочета (мой и публичен) AllProjects=Всички проекти -MyProjectsDesc=Този изглед е ограничен до проекти, в които сте контакт +MyProjectsDesc=Този изглед е ограничен до проекти, в които сте определен за контакт ProjectsPublicDesc=Този изглед представя всички проекти, които можете да прочетете. TasksOnProjectsPublicDesc=Този изглед представя всички задачи по проекти, които можете да прочетете. ProjectsPublicTaskDesc=Този изглед представя всички проекти и задачи, които можете да прочетете. ProjectsDesc=Този изглед представя всички проекти (вашите потребителски права ви дават разрешение да виждате всичко). TasksOnProjectsDesc=Този изглед представя всички задачи за всички проекти (вашите потребителски права ви дават разрешение да виждате всичко). -MyTasksDesc=Този изглед е ограничен до проекти или задачи, в които сте контакт -OnlyOpenedProject=Само отворените проекти са видими (чернови или затворени проекти не са видими). -ClosedProjectsAreHidden=Затворените проекти не са видими. +MyTasksDesc=Този изглед е ограничен до проекти или задачи, в които сте определен за контакт +OnlyOpenedProject=Само отворените проекти са видими (чернови или приключени проекти не са видими). +ClosedProjectsAreHidden=Приключените проекти не са видими. TasksPublicDesc=Този страница показва всички проекти и задачи, които може да прочетете. TasksDesc=Този страница показва всички проекти и задачи (вашите потребителски права ви дават разрешение да виждате всичко). AllTaskVisibleButEditIfYouAreAssigned=Всички задачи за определените проекти са видими, но можете да въведете време само за задача, възложена на избрания потребител. Задайте задача, ако е необходимо да въведете отделено време за нея. OnlyYourTaskAreVisible=Видими са само задачите, които са ви възложени. Възложете задача на себе си, ако не е видима, а трябва да въведете отделено време за нея. ImportDatasetTasks=Задачи по проекти -ProjectCategories=Етикети / Категории +ProjectCategories=Тагове / Категории на проекти NewProject=Нов проект AddProject=Създаване на проект DeleteAProject=Изтриване на проект @@ -35,8 +35,8 @@ OpenedProjects=Отворени проекти OpenedTasks=Отворени задачи OpportunitiesStatusForOpenedProjects=Размер на възможностите от отворени проекти по статус OpportunitiesStatusForProjects=Размер на възможностите от проекти по статус -ShowProject=Преглед на проект -ShowTask=Преглед на задача +ShowProject=Показване на проект +ShowTask=Показване на задача SetProject=Задайте проект NoProject=Няма дефиниран или притежаван проект NbOfProjects=Брой проекти @@ -45,9 +45,9 @@ TimeSpent=Отделено време TimeSpentByYou=Време, отделено от вас TimeSpentByUser=Време, отделено от потребител TimesSpent=Отделено време -TaskId=Задача № -RefTask=Задача реф. -LabelTask=Име на задача +TaskId=Идентификатор на задача +RefTask=Реф. задача +LabelTask=Етикет на задача TaskTimeSpent=Време, отделено на задачи TaskTimeUser=Потребител TaskTimeNote=Бележка @@ -68,7 +68,7 @@ TaskDescription=Описание на задача NewTask=Нова задача AddTask=Създаване на задача AddTimeSpent=Въвеждане на отделено време -AddHereTimeSpentForDay=Добавете тук отделеното време за този ден/задача +AddHereTimeSpentForDay=Добавете тук отделеното време за този ден / задача Activity=Дейност Activities=Задачи / Дейности MyActivities=Мои задачи / дейности @@ -79,14 +79,14 @@ ProgressDeclared=Деклариран напредък ProgressCalculated=Изчислен напредък Time=Време ListOfTasks=Списък със задачи -GoToListOfTimeConsumed=Отидете в списъка с изразходваното време -GoToListOfTasks=Отидете в списъка със задачи -GoToGanttView=Преглед на Gantt диаграма +GoToListOfTimeConsumed=Показване на списъка с изразходвано време +GoToListOfTasks=Показване на списъка със задачи +GoToGanttView=Показване на Gantt диаграма GanttView=Gantt диаграма ListProposalsAssociatedProject=Списък на търговски предложения, свързани с проекта ListOrdersAssociatedProject=Списък на поръчки за продажба, свързани с проекта ListInvoicesAssociatedProject=Списък на фактури за продажба, свързани с проекта -ListPredefinedInvoicesAssociatedProject=Списък на шаблони за фактури за продажба, свързани с проекта +ListPredefinedInvoicesAssociatedProject=Списък на шаблонни фактури за продажба, свързани с проекта ListSupplierOrdersAssociatedProject=Списък на поръчки за покупка, свързани с проекта ListSupplierInvoicesAssociatedProject=Списък на фактури за покупка, свързани с проекта ListContractAssociatedProject=Списък на договори, свързани с проекта @@ -94,34 +94,34 @@ ListShippingAssociatedProject=Списък на пратки, свързани ListFichinterAssociatedProject=Списък на интервенции, свързани с проекта ListExpenseReportsAssociatedProject=Списък на разходни отчети, свързани с проекта ListDonationsAssociatedProject=Списък на дарения, свързани с проекта -ListVariousPaymentsAssociatedProject=Списък на различни плащания, свързани с проекта +ListVariousPaymentsAssociatedProject=Списък на разнородни плащания, свързани с проекта ListSalariesAssociatedProject=Списък на плащания на заплати, свързани с проекта ListActionsAssociatedProject=Списък на събития, свързани с проекта ListTaskTimeUserProject=Списък на отделено време по задачи, свързани с проекта ListTaskTimeForTask=Списък на отделено време за задача -ActivityOnProjectToday=Дейност по проект (за деня) +ActivityOnProjectToday=Дейност по проект (за днес) ActivityOnProjectYesterday=Дейност по проект (за вчера) -ActivityOnProjectThisWeek=Дейност по проект (за седмица) -ActivityOnProjectThisMonth=Дейност по проект (за месеца) -ActivityOnProjectThisYear=Дейност по проект (за година) -ChildOfProjectTask=Наследник на проект/задача +ActivityOnProjectThisWeek=Дейност по проект (за тази седмица) +ActivityOnProjectThisMonth=Дейност по проект (за този месец) +ActivityOnProjectThisYear=Дейност по проект (за тази година) +ChildOfProjectTask=Наследник на проект / задача ChildOfTask=Наследник на задача TaskHasChild=Задачата има наследник -NotOwnerOfProject=Не сте собственик на този частен проект +NotOwnerOfProject=Не сте собственик на този личен проект AffectedTo=Разпределено на CantRemoveProject=Този проект не може да бъде премахнат, тъй като е свързан с някои други обекти (фактури, поръчки или други). Вижте раздела свързани файлове. ValidateProject=Валидиране на проект ConfirmValidateProject=Сигурни ли сте, че искате да валидирате този проект? -CloseAProject=Затваряне на проект -ConfirmCloseAProject=Сигурни ли сте, че искате да затворите този проект? -AlsoCloseAProject=Също така затворете проекта (задръжте го отворен, ако все още трябва да работите по задачите в него) +CloseAProject=Приключване на проект +ConfirmCloseAProject=Сигурни ли сте, че искате да приключите този проект? +AlsoCloseAProject=Приключване на проект (задръжте го отворен, ако все още трябва да работите по задачите в него) ReOpenAProject=Отваряне на проект ConfirmReOpenAProject=Сигурни ли сте, че искате да отворите повторно този проект? ProjectContact=Контакти / Участници TaskContact=Участници в задачата ActionsOnProject=Събития свързани с проекта -YouAreNotContactOfProject=Вие не сте контакт за този частен проект -UserIsNotContactOfProject=Потребителят не е контакт за този частен проект +YouAreNotContactOfProject=Вие не сте определен за контакт в този личен проект +UserIsNotContactOfProject=Потребителят не е определен за контакт в този личен проект DeleteATimeSpent=Изтриване на отделено време ConfirmDeleteATimeSpent=Сигурни ли сте, че искате да изтриете това отделено време? DoNotShowMyTasksOnly=Показване също на задачи, които не са възложени на мен @@ -130,25 +130,25 @@ TaskRessourceLinks=Контакти / Участници ProjectsDedicatedToThisThirdParty=Проекти, насочени към този контрагент NoTasks=Няма задачи за този проект LinkedToAnotherCompany=Свързано с друг контрагент -TaskIsNotAssignedToUser=Задачата не е възложена на потребителя. Използвайте бутона '%s', за да възложите задачата. +TaskIsNotAssignedToUser=Задачата не е възложена на потребителя. Използвайте бутона '%s', за да възложите задачата сега. ErrorTimeSpentIsEmpty=Отделеното време е празно ThisWillAlsoRemoveTasks=Това действие ще изтрие всички задачи по проекта (%s задачи в момента) и всички въвеждания на отделено време. -IfNeedToUseOtherObjectKeepEmpty=Ако някои обекти (фактура, поръчка, ...), принадлежащи на друг контрагент, трябва да бъдат свързани с проекта, за да се създаде, запази това празно, за да бъде проектът многостранен. +IfNeedToUseOtherObjectKeepEmpty=Ако някои обекти (фактура, поръчка, ...), принадлежащи на друг контрагент, трябва да бъдат свързани с проекта за създаване, запазете това празно, за да бъде проектът мулти-контрагентен. CloneTasks=Клониране на задачи CloneContacts=Клониране на контакти CloneNotes=Клониране на бележки CloneProjectFiles=Клониране на обединени файлове в проекта CloneTaskFiles=Клониране на обединени файлове в задачи (ако задача(ите) са клонирани) -CloneMoveDate=Актуализиране на датите на проекта/задачите от сега? +CloneMoveDate=Актуализиране на датите на проекта / задачите от сега? ConfirmCloneProject=Сигурни ли сте, че ще искате да клонирате този проект? ProjectReportDate=Променете датите на задачите, според новата начална дата на проекта ErrorShiftTaskDate=Невъзможно е да се смени датата на задача, за да съответства на новата начална дата на проекта ProjectsAndTasksLines=Проекти и задачи ProjectCreatedInDolibarr=Проект %s е създаден ProjectValidatedInDolibarr=Проект %s е валидиран -ProjectModifiedInDolibarr=Проект %s е редактиран +ProjectModifiedInDolibarr=Проект %s е променен TaskCreatedInDolibarr=Задача %s е създадена -TaskModifiedInDolibarr=Задача %s е редактирана +TaskModifiedInDolibarr=Задача %s е променена TaskDeletedInDolibarr=Задача %s е изтрита OpportunityStatus=Статус на възможността OpportunityStatusShort=Статус на възможността @@ -171,23 +171,23 @@ TypeContact_project_task_external_TASKCONTRIBUTOR=Сътрудник SelectElement=Избиране на елемент AddElement=Връзка към елемент # Documents models -DocumentModelBeluga=Шаблон за проектен документ за преглед на свързани обекти -DocumentModelBaleine=Шаблон за проектен документ за задачи +DocumentModelBeluga=Шаблон на проектен документ за преглед на свързани елементи +DocumentModelBaleine=Шаблон на проектен документ за задачи DocumentModelTimeSpent=Шаблон за отчет на отделеното време по проект -PlannedWorkload=Планирана работна натовареност -PlannedWorkloadShort=Работна натовареност +PlannedWorkload=Планирана натовареност +PlannedWorkloadShort=Натовареност ProjectReferers=Свързани елементи ProjectMustBeValidatedFirst=Проектът трябва първо да бъде валидиран FirstAddRessourceToAllocateTime=Определете потребителски ресурс на задачата за разпределяне на времето InputPerDay=За ден InputPerWeek=За седмица InputDetail=Детайли -TimeAlreadyRecorded=Това отделено време е вече записано за тази задача/ден и потребител %s +TimeAlreadyRecorded=Това отделено време е вече записано за тази задача / ден и потребител %s ProjectsWithThisUserAsContact=Проекти с потребител за контакт -TasksWithThisUserAsContact=Задачи възложени на този потребител +TasksWithThisUserAsContact=Задачи възложени на потребител ResourceNotAssignedToProject=Не е зададено към проект ResourceNotAssignedToTheTask=Не е зададено към задача -NoUserAssignedToTheProject=Няма потребители, назначени за този проект +NoUserAssignedToTheProject=Няма потребители, назначени за този проект. TimeSpentBy=Отделено време от TasksAssignedTo=Задачи, възложени на AssignTaskToMe=Възлагане на задача към мен @@ -195,22 +195,22 @@ AssignTaskToUser=Възлагане на задача към %s SelectTaskToAssign=Изберете задача за възлагане... AssignTask=Възлагане ProjectOverview=Общ преглед -ManageTasks=Използване на проекти, за да следите задачите и/или да докладвате за отделеното време за тях (часови листове) -ManageOpportunitiesStatus=Използване на проекти за проследяване на възможности/потенциални клиенти +ManageTasks=Използване на проекти, за да следите задачите и / или да докладвате за отделеното време за тях (графици) +ManageOpportunitiesStatus=Използване на проекти за проследяване на възможности / потенциални клиенти ProjectNbProjectByMonth=Брой създадени проекти на месец ProjectNbTaskByMonth=Брой създадени задачи на месец ProjectOppAmountOfProjectsByMonth=Сума на възможностите на месец ProjectWeightedOppAmountOfProjectsByMonth=Изчислена сума на възможностите на месец -ProjectOpenedProjectByOppStatus=Отворен проект/възможност по статус на възможността -ProjectsStatistics=Статистики за проекти/възможности -TasksStatistics=Статистика за задачи +ProjectOpenedProjectByOppStatus=Отворен проект / възможност по статус на възможността +ProjectsStatistics=Статистики на проекти / възможности +TasksStatistics=Статистика на задачи TaskAssignedToEnterTime=Задачата е възложена. Въвеждането на време по тази задача трябва да е възможно. -IdTaskTime=Id време на задача +IdTaskTime=Идентификатор на време на задача YouCanCompleteRef=Ако искате да завършите реф. с някакъв суфикс, препоръчително е да добавите символ "-", за да го разделите, така че автоматичното номериране да продължи да работи правилно за следващите проекти. Например %s-MYSUFFIX OpenedProjectsByThirdparties=Отворени проекти по контрагенти OnlyOpportunitiesShort=Само възможности OpenedOpportunitiesShort=Отворени възможности -NotOpenedOpportunitiesShort=Затворени възможности +NotOpenedOpportunitiesShort=Неотворени възможности NotAnOpportunityShort=Не е възможност OpportunityTotalAmount=Обща сума на възможностите OpportunityPonderatedAmount=Изчислена сума на възможностите @@ -227,14 +227,14 @@ AllowToLinkFromOtherCompany=Позволяване свързването на LatestProjects=Проекти: %s последни LatestModifiedProjects=Проекти: %s последно променени OtherFilteredTasks=Други филтрирани задачи -NoAssignedTasks=Не са намерени възложени задачи (възложете проект/задачи на текущия потребител от най-горното поле за избор, за да въведете времето в него) +NoAssignedTasks=Не са намерени възложени задачи (възложете проект / задачи на текущия потребител от най-горното поле за избор, за да въведете времето в него) ThirdPartyRequiredToGenerateInvoice=Контрагент трябва да бъде дефиниран в проекта, за да може да му издавате фактури. # Comments trans AllowCommentOnTask=Разрешаване на потребителски коментари в задачите AllowCommentOnProject=Разрешаване на потребителски коментари в проектите -DontHavePermissionForCloseProject=Нямате права да затворите проект %s -DontHaveTheValidateStatus=Проектът %s трябва да бъде отворен, за да го затворите -RecordsClosed=%s проект(а) е(са) затворен(и) +DontHavePermissionForCloseProject=Нямате права, за да приключите проект %s. +DontHaveTheValidateStatus=Проектът %s трябва да бъде отворен, за да го приключите. +RecordsClosed=%s проект(а) е(са) приключен(и) SendProjectRef=Информация за проект %s ModuleSalaryToDefineHourlyRateMustBeEnabled=Модулът 'Заплати' трябва да бъде активиран, за да дефинирате почасова ставка на служителите, за да оценените отделеното по проекта време NewTaskRefSuggested=Реф. № на задачата вече се използва, изисква се нов diff --git a/htdocs/langs/bg_BG/propal.lang b/htdocs/langs/bg_BG/propal.lang index 05ae69cff51..a7392ece08c 100644 --- a/htdocs/langs/bg_BG/propal.lang +++ b/htdocs/langs/bg_BG/propal.lang @@ -9,7 +9,7 @@ PdfCommercialProposalTitle=Търговско предложение ProposalCard=Карта NewProp=Ново търговско предложение NewPropal=Ново предложение -Prospect=Перспектива +Prospect=Потенциален клиент DeleteProp=Изтриване на търговско предложение ValidateProp=Валидиране на търговско предложение AddProp=Създаване на предложение @@ -26,19 +26,19 @@ AmountOfProposalsByMonthHT=Обща сума на месец (без ДДС) NbOfProposals=Брой търговски предложения ShowPropal=Показване на предложение PropalsDraft=Чернови -PropalsOpened=Отворено +PropalsOpened=Отворени PropalStatusDraft=Чернова (нужно е валидиране) PropalStatusValidated=Валидирано (отворено) PropalStatusSigned=Подписано (нужно е фактуриране) -PropalStatusNotSigned=Неподписано (затворено) +PropalStatusNotSigned=Отхвърлено (приключено) PropalStatusBilled=Фактурирано PropalStatusDraftShort=Чернова PropalStatusValidatedShort=Валидирано (отворено) -PropalStatusClosedShort=Затворено +PropalStatusClosedShort=Приключено PropalStatusSignedShort=Подписано -PropalStatusNotSignedShort=Неподписано +PropalStatusNotSignedShort=Отхвърлено PropalStatusBilledShort=Фактурирано -PropalsToClose=Търговски предложения за затваряне +PropalsToClose=Търговски предложения за приключване PropalsToBill=Подписани търговски предложения за фактуриране ListOfProposals=Списък на търговски предложения ActionsOnPropal=Свързани събития @@ -58,10 +58,10 @@ DefaultProposalDurationValidity=Срок на валидност по подра UseCustomerContactAsPropalRecipientIfExist=Използване тип на контакт / адрес 'Представител проследяващ предложението', ако е определен, вместо адрес на контрагента като адрес на получателя на предложението ConfirmClonePropal=Сигурни ли сте, че искате да клонирате търговско предложение %s? ConfirmReOpenProp=Сигурни ли сте, че искате да отворите отново търговско предложение %s? -ProposalsAndProposalsLines=Търговско предложение и линии -ProposalLine=Линия на предложението +ProposalsAndProposalsLines=Търговско предложение и редове +ProposalLine=Ред № AvailabilityPeriod=Забавяне на наличността -SetAvailability=Определяне на забавянето на наличността +SetAvailability=Задайте забавяне на наличността AfterOrder=след поръчка OtherProposals=Други предложения ##### Availability ##### @@ -76,10 +76,10 @@ TypeContact_propal_external_BILLING=Получател на фактурата TypeContact_propal_external_CUSTOMER=Получател на предложението TypeContact_propal_external_SHIPPING=Получател на доставката # Document models -DocModelAzurDescription=Завършен шаблон за предложение (logo...) -DocModelCyanDescription=Завършен шаблон за предложение (logo...) +DocModelAzurDescription=Завършен шаблон за предложение (лого...) +DocModelCyanDescription=Завършен шаблон за предложение (лого...) DefaultModelPropalCreate=Създаване на шаблон по подразбиране -DefaultModelPropalToBill=Шаблон по подразбиране, когато се затваря търговско предложение (за да бъде фактурирано) -DefaultModelPropalClosed=Шаблон по подразбиране, когато се затваря търговско предложение (нефактурирано) -ProposalCustomerSignature=Писмено приемане, фирмен печат, дата и подпис +DefaultModelPropalToBill=Шаблон по подразбиране, когато се приключва търговско предложение (за да бъде фактурирано) +DefaultModelPropalClosed=Шаблон по подразбиране, когато се приключва търговско предложение (не таксувано) +ProposalCustomerSignature=Име, фамилия, фирмен печат, дата и подпис ProposalsStatisticsSuppliers=Статистика на запитванията към доставчици diff --git a/htdocs/langs/bg_BG/sendings.lang b/htdocs/langs/bg_BG/sendings.lang index 2603bb9e759..8479a33646a 100644 --- a/htdocs/langs/bg_BG/sendings.lang +++ b/htdocs/langs/bg_BG/sendings.lang @@ -1,33 +1,33 @@ # Dolibarr language file - Source file is en_US - sendings -RefSending=Реф. експедиция -Sending=Експедиция -Sendings=Експедиции -AllSendings=Всички експедиции -Shipment=Пратка -Shipments=Пратки -ShowSending=Показване на експедиции +RefSending=Реф. доставка +Sending=Доставка +Sendings=Доставки +AllSendings=Всички доставки +Shipment=Доставка +Shipments=Доставки +ShowSending=Показване на доставка Receivings=Разписки за доставка -SendingsArea=Зона на Експедиции -ListOfSendings=Списък на експедиции +SendingsArea=Секция за доставки +ListOfSendings=Списък на доставки SendingMethod=Начин на доставка -LastSendings=Експедиции: %s последни -StatisticsOfSendings=Статистика за експедидиите -NbOfSendings=Брой експедиции -NumberOfShipmentsByMonth=Брой експедиции на месец -SendingCard=Карта за експедиция -NewSending=Нова експедиция -CreateShipment=Създаване на пратка -QtyShipped=Изпратено количество -QtyShippedShort=Изпр. кол. -QtyPreparedOrShipped=Приготвено или изпратено кол. -QtyToShip=Количество за изпращане -QtyReceived=Получено количество -QtyInOtherShipments=Количество в други пратки +LastSendings=Доставки: %s последни +StatisticsOfSendings=Статистика за доставки +NbOfSendings=Брой доставки +NumberOfShipmentsByMonth=Брой доставки на месец +SendingCard=Карта на доставка +NewSending=Нова доставка +CreateShipment=Създаване на доставка +QtyShipped=Изпратено кол. +QtyShippedShort=Изпратено +QtyPreparedOrShipped=Подготвено или изпратено кол. +QtyToShip=Кол. за изпращане +QtyReceived=Получено кол. +QtyInOtherShipments=Кол. в други доставки KeepToShip=Оставащо за изпращане KeepToShipShort=Оставащо -OtherSendingsForSameOrder=Други експедиции за тази поръчка -SendingsAndReceivingForSameOrder=Експедиции и разписки за тази поръчка -SendingsToValidate=Експедиции за валидиране +OtherSendingsForSameOrder=Други доставки за тази поръчка +SendingsAndReceivingForSameOrder=Доставки и разписки за тази поръчка +SendingsToValidate=Доставки за валидиране StatusSendingCanceled=Анулирана StatusSendingDraft=Чернова StatusSendingValidated=Валидирана (продукти за изпращане или вече изпратени) @@ -35,38 +35,38 @@ StatusSendingProcessed=Обработена StatusSendingDraftShort=Чернова StatusSendingValidatedShort=Валидирана StatusSendingProcessedShort=Обработена -SendingSheet=Лист за експедиция -ConfirmDeleteSending=Сигурни ли сте, че искате да изтриете тази експедиция? -ConfirmValidateSending=Сигурни ли сте, че искате да валидирате тази експедиция с реф. %s? -ConfirmCancelSending=Сигурни ли сте, че ли искате да анулирате тази експедиция? +SendingSheet=Формуляр за доставка +ConfirmDeleteSending=Сигурни ли сте, че искате да изтриете тази доставка? +ConfirmValidateSending=Сигурни ли сте, че искате да валидирате тази доставка с реф. %s? +ConfirmCancelSending=Сигурни ли сте, че ли искате да анулирате тази доставка? DocumentModelMerou=Шаблон А5 размер WarningNoQtyLeftToSend=Внимание, няма продукти чакащи да бъдат изпратени. -StatsOnShipmentsOnlyValidated=Статистики водени само от валидирани пратки. Използваната дата е дата на валидиране на пратката (планираната дата на доставка не винаги е известна) +StatsOnShipmentsOnlyValidated=Статистики водени само от валидирани доставки. Използваната дата е дата на валидиране на доставката (планираната дата на доставка не винаги е известна) DateDeliveryPlanned=Планирана дата за доставка RefDeliveryReceipt=Реф. разписка за доставка StatusReceipt=Статус на разписка за доставка DateReceived=Дата на получаване -SendShippingByEMail=Изпращане на пратка по имейл -SendShippingRef=Подаване на пратка %s -ActionsOnShipping=Събития за пратка +SendShippingByEMail=Изпращане на доставка по имейл +SendShippingRef=Изпращане на доставка %s +ActionsOnShipping=Свързани събития LinkToTrackYourPackage=Връзка за проследяване на вашата пратка -ShipmentCreationIsDoneFromOrder=За момента създаването на нова пратка се извършва от картата на поръчката. -ShipmentLine=Линия на пратка -ProductQtyInCustomersOrdersRunning=Количество продукт в отворени клиентски поръчки +ShipmentCreationIsDoneFromOrder=За момента създаването на нова доставка се извършва от картата на поръчка. +ShipmentLine=Ред на доставка +ProductQtyInCustomersOrdersRunning=Количество продукт в отворени поръчки за продажба ProductQtyInSuppliersOrdersRunning=Количество продукт в отворени поръчки за покупка -ProductQtyInShipmentAlreadySent=Вече изпратено количество продукт от отворена поръчка -ProductQtyInSuppliersShipmentAlreadyRecevied=Вече получено количество продукт от отворена поръчка за покупка +ProductQtyInShipmentAlreadySent=Количество продукт в отворени и вече изпратени поръчки за продажба +ProductQtyInSuppliersShipmentAlreadyRecevied=Количество продукт в отворени и вече получени поръчки за покупка NoProductToShipFoundIntoStock=Не е намерен продукт за изпращане в склад %s. Коригирайте наличността или се върнете, за да изберете друг склад. -WeightVolShort=Тегло/Обем -ValidateOrderFirstBeforeShipment=Първо трябва да валидирате поръчката, преди да можете да изпращате пратки. +WeightVolShort=Тегло / Обем +ValidateOrderFirstBeforeShipment=Първо трябва да валидирате поръчката, преди да може да извършвате доставки. # Sending methods # ModelDocument -DocumentModelTyphon=Завършен шаблон на разписка за доставка (лого...) +DocumentModelTyphon=Завършен шаблон на разписка за доставка (лого...) Error_EXPEDITION_ADDON_NUMBER_NotDefined=Константата EXPEDITION_ADDON_NUMBER не е дефинирана SumOfProductVolumes=Сума от обема на продуктите SumOfProductWeights=Сума от теглото на продуктите # warehouse details -DetailWarehouseNumber= Подробности за склада +DetailWarehouseNumber= Детайли за склада DetailWarehouseFormat= Тегло: %s (Кол.: %d) diff --git a/htdocs/langs/bg_BG/stocks.lang b/htdocs/langs/bg_BG/stocks.lang index 27a3b5aa48a..1e9bdd20f78 100644 --- a/htdocs/langs/bg_BG/stocks.lang +++ b/htdocs/langs/bg_BG/stocks.lang @@ -1,5 +1,5 @@ # Dolibarr language file - Source file is en_US - stocks -WarehouseCard=Карта на склад +WarehouseCard=Карта Warehouse=Склад Warehouses=Складове ParentWarehouse=Основен склад @@ -7,7 +7,7 @@ NewWarehouse=Нов склад / местоположение WarehouseEdit=Промяна на склад MenuNewWarehouse=Нов склад WarehouseSource=Изпращащ склад -WarehouseSourceNotDefined=Няма зададен склад, +WarehouseSourceNotDefined=Няма дефиниран склад AddWarehouse=Създаване на склад AddOne=Добавяне на един DefaultWarehouse=Склад по подразбиране @@ -17,20 +17,20 @@ CancelSending=Анулиране на изпращане DeleteSending=Изтриване на изпращане Stock=Наличност Stocks=Наличности -StocksByLotSerial=Наличности по Партида/Сериен № -LotSerial=Партиди/Серийни номера -LotSerialList=Списък на партиди/серийни номера +StocksByLotSerial=Наличности по партида / сериен № +LotSerial=Партиди / Серийни номера +LotSerialList=Списък на партиди / серийни номера Movements=Движения ErrorWarehouseRefRequired=Изисква се референтно име на склад ListOfWarehouses=Списък на складове -ListOfStockMovements=Списък на движението на стоковите наличности +ListOfStockMovements=Списък на движения на стокови наличности ListOfInventories=Списък на инвентари -MovementId=Идент. № за движение -StockMovementForId=Идент. № за движение %d -ListMouvementStockProject=Списък на складовите движения, свързани с проекта -StocksArea=Зона за складове +MovementId=Идентификатор на движение +StockMovementForId=Идентификатор на движение %d +ListMouvementStockProject=Списък на движения на стокови наличности, свързани с проекта +StocksArea=Секция за складове AllWarehouses=Всички складове -IncludeAlsoDraftOrders=Включва също чернови поръчки +IncludeAlsoDraftOrders=Включва чернови поръчки Location=Местоположение LocationSummary=Кратко име на местоположение NumberOfDifferentProducts=Брой различни продукти @@ -53,7 +53,7 @@ StockLowerThanLimit=Наличността е по-малка от лимита EnhancedValue=Стойност PMPValue=Средно измерена цена PMPValueShort=СИЦ -EnhancedValueOfWarehouses=Стойност на складовете +EnhancedValueOfWarehouses=Складова стойност UserWarehouseAutoCreate=Автоматично създаване на личен потребителски склад при създаване на потребител AllowAddLimitStockByWarehouse=Управляване също и на стойности за минимална и желана наличност за двойка (продукт-склад) в допълнение към стойност за продукт IndependantSubProductStock=Наличностите за продукти и подпродукти са независими @@ -81,15 +81,15 @@ StockLimit=Минимално количество за предупрежден StockLimitDesc=(празно) означава, че няма предупреждение.
0 може да се използва за предупреждение веднага след като наличността е изчерпана. PhysicalStock=Физическа наличност RealStock=Реална наличност -RealStockDesc=Физическа/реална наличност е наличността, която в момента се намира в складовете. +RealStockDesc=Физическа / реална наличност е наличността, която в момента се намира в складовете. RealStockWillAutomaticallyWhen=Реалната наличност ще бъде модифицирана според това правило (както е определено в модула на Наличности): VirtualStock=Виртуална наличност VirtualStockDesc=Виртуална наличност е изчислената наличност, която се образува след като всички отворени / предстоящи действия (които засягат наличности) се затворят (получени поръчки за покупка, изпратени клиентски поръчки и т.н.) -IdWarehouse=Идент. № на склад +IdWarehouse=Идентификатор на склад DescWareHouse=Описание на склад LieuWareHouse=Местоположение на склад WarehousesAndProducts=Складове и продукти -WarehousesAndProductsBatchDetail=Складове и продукти (с подробности за партида/ сериен №) +WarehousesAndProductsBatchDetail=Складове и продукти (с подробности за партида / сериен №) AverageUnitPricePMPShort=Средно измерена входна цена AverageUnitPricePMP=Средно измерена входна цена SellPriceMin=Единична продажна цена @@ -98,29 +98,29 @@ EstimatedStockValueSell=Стойност за продажба EstimatedStockValueShort=Входна стойност на наличност EstimatedStockValue=Входна стойност на наличност DeleteAWarehouse=Изтриване на склад -ConfirmDeleteWarehouse=Сигурни ли сте, че искате да изтриете склада %s? +ConfirmDeleteWarehouse=Сигурни ли сте, че искате да изтриете склад %s? PersonalStock=Наличност в %s ThisWarehouseIsPersonalStock=Този склад представлява фактическата наличност в %s %s SelectWarehouseForStockDecrease=Избиране на склад, който да се използва за намаляване на наличности SelectWarehouseForStockIncrease=Избиране на склад, който да се използва за увеличение на наличности NoStockAction=Няма действие с наличности DesiredStock=Желана наличност -DesiredStockDesc=Тази стойност ще бъде използвана за попълване на наличността, чрез функцията за попълване на наличности +DesiredStockDesc=Тази стойност ще бъде използвана за запълване на наличността, чрез функцията за попълване на наличности StockToBuy=За поръчка Replenishment=Попълване на наличности ReplenishmentOrders=Поръчки за попълване -VirtualDiffersFromPhysical=Според опциите за увеличаване/намаляване на наличности, физическите и виртуални наличности (физически + текущи поръчки) могат да се различават +VirtualDiffersFromPhysical=Според опциите за увеличаване / намаляване на наличности, физическите и виртуални наличности (физически + текущи поръчки) могат да се различават UseVirtualStockByDefault=Използване на виртуални наличности по подразбиране (вместо физически наличности) при използване на функцията за попълване на наличности UseVirtualStock=Използване на виртуални наличности UsePhysicalStock=Използване на физически наличности CurentSelectionMode=Текущ режим на избор CurentlyUsingVirtualStock=Виртуална наличност -CurentlyUsingPhysicalStock=Фактическа наличност +CurentlyUsingPhysicalStock=Физическа наличност RuleForStockReplenishment=Правило за попълване на наличности SelectProductWithNotNullQty=Избиране на най-малко един продукт с количество различно от 0 и доставчик AlertOnly= Само предупреждения -WarehouseForStockDecrease=Този склад %s ще се използва за намаляване на наличността -WarehouseForStockIncrease=Този склад %s ще се използва за увеличаване на наличността +WarehouseForStockDecrease=Складът %s ще бъде използван за намаляване на наличността +WarehouseForStockIncrease=Складът %s ще бъде използван за увеличаване на наличността ForThisWarehouse=За този склад ReplenishmentStatusDesc=Това е списък на всички продукти, чиято наличност е по-малка от желаната (или е по-малка от стойността на предупреждението, ако е поставена отметка в квадратчето 'Само предупреждения'). При използване на отметка в квадратчето може да създавате поръчки за покупка, за да запълните разликата. ReplenishmentOrdersDesc=Това е списък на всички отворени поръчки за покупка, включително предварително дефинирани продукти. Тук могат да се видят само отворени поръчки с предварително дефинирани продукти, които могат да повлияят на наличностите. @@ -142,16 +142,16 @@ DateMovement=Дата на движение InventoryCode=Код на движение / Инвентарен код IsInPackage=Съдържа се в опаковка WarehouseAllowNegativeTransfer=Наличността може да бъде отрицателна -qtyToTranferIsNotEnough=Нямате достатъчно запаси в изпращащия склад и настройката ви не позволява отрицателни наличности. +qtyToTranferIsNotEnough=Нямате достатъчно наличности в изпращащия склад и настройката ви не позволява отрицателни наличности. ShowWarehouse=Показване на склад MovementCorrectStock=Корекция на наличност за продукт %s MovementTransferStock=Прехвърляне на наличност за продукт %s в друг склад -InventoryCodeShort=Движ./Инв. код +InventoryCodeShort=Движ. / Инв. код NoPendingReceptionOnSupplierOrder=Не се очаква получаване, тъй като поръчката за покупка е отворена -ThisSerialAlreadyExistWithDifferentDate=Тази партида/сериен № (%s) вече съществува, но с различна дата на усвояване или дата на продажба (намерена е %s, но вие сте въвели %s). +ThisSerialAlreadyExistWithDifferentDate=Тази партида / сериен № (%s) вече съществува, но с различна дата на усвояване или дата на продажба (намерена е %s, но вие сте въвели %s). OpenAll=Отворено за всички действия OpenInternal=Отворен само за вътрешни действия -UseDispatchStatus=Използване на статус на изпращане (одобряване/отхвърляне) за продуктови линии при получаване на поръчка за покупка +UseDispatchStatus=Използване на статус на изпращане (одобряване / отхвърляне) за продуктови редове при получаване на поръчка за покупка OptionMULTIPRICESIsOn=Опцията 'Няколко цени за сегмент' е включена. Това означава, че продуктът има няколко продажни цени, така че стойността за продажба не може да бъде изчислена ProductStockWarehouseCreated=Минималното количество за предупреждение и желаните оптимални наличности са правилно създадени ProductStockWarehouseUpdated=Минималното количество за предупреждение и желаните оптимални наличности са правилно актуализирани @@ -159,19 +159,19 @@ ProductStockWarehouseDeleted=Минималното количество за п AddNewProductStockWarehouse=Определяне на ново минимално количество за предупреждение и желана оптимална наличност AddStockLocationLine=Намалете количеството, след което кликнете, за да добавите друг склад за този продукт InventoryDate=Дата на инвентаризация -NewInventory=Нов инвентар -inventorySetup = Настройка на инвентар +NewInventory=Нова инвентаризация +inventorySetup = Настройка на инвентаризация inventoryCreatePermission=Създаване на нова инвентаризация -inventoryReadPermission=Преглед на инвентари -inventoryWritePermission=Актуализиране на инвентари -inventoryValidatePermission=Валидиране на инвентар +inventoryReadPermission=Преглед на инвентаризации +inventoryWritePermission=Актуализиране на инвентаризации +inventoryValidatePermission=Валидиране на инвентаризация inventoryTitle=Инвентаризация inventoryListTitle=Инвентаризации inventoryListEmpty=Не се извършва инвентаризация -inventoryCreateDelete=Създаване/Изтриване на инвентаризация +inventoryCreateDelete=Създаване / Изтриване на инвентаризация inventoryCreate=Създаване на нова -inventoryEdit=Редактиране -inventoryValidate=Валидиране +inventoryEdit=Промяна +inventoryValidate=Валидирана inventoryDraft=В ход inventorySelectWarehouse=Избор на склад inventoryConfirmCreate=Създаване @@ -182,11 +182,11 @@ inventoryWarningProductAlreadyExists=Този продукт е вече в сп SelectCategory=Филтър по категория SelectFournisseur=Филтър по доставчик inventoryOnDate=Инвентаризация -INVENTORY_DISABLE_VIRTUAL=Виртуален продукт (комплект): не намалявайте наличността на подпродукт -INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Използване на покупна цена, ако не може да бъде намерена последна цена за покупка +INVENTORY_DISABLE_VIRTUAL=Виртуален продукт (комплект): не намалявайте наличността на съставен продукт +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Използване на покупната цена, ако не може да бъде намерена последна цена за покупка INVENTORY_USE_INVENTORY_DATE_FROM_DATEMVT=Движението на наличности има дата на инвентаризация inventoryChangePMPPermission=Променяне на стойността на СИЦ (средно изчислена цена) за даден продукт -ColumnNewPMP=Нова единица СИЦ +ColumnNewPMP=Нова СИЦ OnlyProdsInStock=Не добавяйте продукт без наличност TheoricalQty=Теоретично количество TheoricalValue=Теоретична стойност @@ -198,17 +198,17 @@ RegulatedQty=Регулирано количество AddInventoryProduct=Добавяне на продукт към инвентаризация AddProduct=Добавяне ApplyPMP=Прилагане на СИЦ -FlushInventory=Прочистване на инвентар +FlushInventory=Прочистване на инвентаризация ConfirmFlushInventory=Потвърждавате ли това действие? -InventoryFlushed=Инвентарът е прочистен +InventoryFlushed=Инвентаризацията е прочистена ExitEditMode=Изходно издание -inventoryDeleteLine=Изтриване на линия +inventoryDeleteLine=Изтриване на ред RegulateStock=Регулиране на наличност ListInventory=Списък StockSupportServices=Управлението на наличности включва и услуги StockSupportServicesDesc=По под разбиране можете да съхранявате само продукти от тип 'продукт'. Можете също така да запазите продукт от тип 'услуга', ако модула 'Услуги' и тази опция са активирани. ReceiveProducts=Получаване на артикули -StockIncreaseAfterCorrectTransfer=Увеличаване с корекция/прехвърляне -StockDecreaseAfterCorrectTransfer=Намаляване с корекция/прехвърляне -StockIncrease=Увеличаване на наличността +StockIncreaseAfterCorrectTransfer=Увеличаване с корекция / прехвърляне +StockDecreaseAfterCorrectTransfer=Намаляване с корекция / прехвърляне +StockIncrease=Увеличаване на наличност StockDecrease=Намаляване на наличност diff --git a/htdocs/langs/bg_BG/stripe.lang b/htdocs/langs/bg_BG/stripe.lang index 2b3107da00d..210bda38787 100644 --- a/htdocs/langs/bg_BG/stripe.lang +++ b/htdocs/langs/bg_BG/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/bg_BG/supplier_proposal.lang b/htdocs/langs/bg_BG/supplier_proposal.lang index bebe7d33843..c790cb922b5 100644 --- a/htdocs/langs/bg_BG/supplier_proposal.lang +++ b/htdocs/langs/bg_BG/supplier_proposal.lang @@ -48,7 +48,7 @@ DefaultModelSupplierProposalToBill=Шаблон по подразбиране, DefaultModelSupplierProposalClosed=Шаблон по подразбиране, когато се затваря запитване за цена (отхвърлено) ListOfSupplierProposals=Списък на запитвания към доставчици ListSupplierProposalsAssociatedProject=Списък на запитвания към доставчици свързани с проект -SupplierProposalsToClose=Запитвания към доставчици за затваряне +SupplierProposalsToClose=Запитвания към доставчици за приключване SupplierProposalsToProcess=Запитвания към доставчици за обработка LastSupplierProposals=Запитвания за цени: %s последни AllPriceRequests=Всички запитвания diff --git a/htdocs/langs/bg_BG/ticket.lang b/htdocs/langs/bg_BG/ticket.lang index 5226ab9e8fc..8a751a908cf 100644 --- a/htdocs/langs/bg_BG/ticket.lang +++ b/htdocs/langs/bg_BG/ticket.lang @@ -25,11 +25,11 @@ Permission56001=Преглед на тикети Permission56002=Промяна на тикети Permission56003=Изтриване на тикети Permission56004=Управление на тикети -Permission56005=Преглед на тикети от всички контрагенти (не е приложимо за външни потребители, винаги ще бъдат ограничени до контрагента, от който зависят) +Permission56005=Преглед на тикети от всички контрагенти (не е приложимо за външни потребители, винаги ще бъдат ограничени до контрагента от който зависят) TicketDictType=Тикет - Видове TicketDictCategory=Тикет - Групи -TicketDictSeverity=Тикет - Важност +TicketDictSeverity=Тикет - Приоритети TicketTypeShortBUGSOFT=Софтуерна неизправност TicketTypeShortBUGHARD=Хардуерна неизправност TicketTypeShortCOM=Търговски въпрос @@ -37,14 +37,14 @@ TicketTypeShortINCIDENT=Молба за съдействие TicketTypeShortPROJET=Проект TicketTypeShortOTHER=Друго -TicketSeverityShortLOW=Ниска -TicketSeverityShortNORMAL=Нормална -TicketSeverityShortHIGH=Висока -TicketSeverityShortBLOCKING=Критична/Блокираща +TicketSeverityShortLOW=Нисък +TicketSeverityShortNORMAL=Нормален +TicketSeverityShortHIGH=Висок +TicketSeverityShortBLOCKING=Критичен ErrorBadEmailAddress=Полето "%s" е неправилно -MenuTicketMyAssign=Моите тикети -MenuTicketMyAssignNonClosed=Моите отворени тикети +MenuTicketMyAssign=Мои тикети +MenuTicketMyAssignNonClosed=Мои отворени тикети MenuListNonClosed=Отворени тикети TypeContact_ticket_internal_CONTRIBUTOR=Сътрудник @@ -58,18 +58,18 @@ Notify_TICKET_SENTBYMAIL=Изпращане на тикет съобщениет # Status NotRead=Непрочетен Read=Прочетен -Assigned=Назначен +Assigned=Възложен InProgress=В процес NeedMoreInformation=Изчакване на информация Answered=Отговорен -Waiting=Изчакващ +Waiting=В изчакване Closed=Затворен Deleted=Изтрит # Dict Type=Вид -Category=Аналитичен код -Severity=Важност +Category=Категория +Severity=Приоритет # Email templates MailToSendTicketMessage=За да изпратите имейл с това съобщение @@ -81,9 +81,9 @@ TicketSetup=Настройка на тикет модула TicketSettings=Настройки TicketSetupPage= TicketPublicAccess=Публичен интерфейс, който не изисква идентификация, е достъпен на следния URL адрес -TicketSetupDictionaries=Видът на тикета, важността и аналитичните кодове се конфигурират от речници +TicketSetupDictionaries=Видът на тикета, приоритетът и категорията се конфигурират от речници TicketParamModule=Настройка на променливите в модула -TicketParamMail=Настройка на имейл известяването +TicketParamMail=Настройка за имейл известяване TicketEmailNotificationFrom=Известяващ имейл от TicketEmailNotificationFromHelp=Използван при отговор и изпращане на тикет съобщения TicketEmailNotificationTo=Известяващ имейл до @@ -92,23 +92,23 @@ TicketNewEmailBodyLabel=Текстово съобщение, изпратено TicketNewEmailBodyHelp=Текстът, посочен тук, ще бъде включен в имейла, потвърждаващ създаването на нов тикет от публичния интерфейс. Информацията с детайлите на тикета се добавя автоматично. TicketParamPublicInterface=Настройка на публичен интерфейс TicketsEmailMustExist=Изисква съществуващ имейл адрес, за да се създаде тикет -TicketsEmailMustExistHelp=В публичния интерфейс имейл адресът трябва да е вече въведен в базата данни, за да се създаде нов тикет. +TicketsEmailMustExistHelp=За да се създаде нов тикет през публичния интерфейс имейл адресът трябва да съществува в базата данни PublicInterface=Публичен интерфейс TicketUrlPublicInterfaceLabelAdmin=Алтернативен URL адрес за публичния интерфейс -TicketUrlPublicInterfaceHelpAdmin=Възможно е да се дефинира псевдоним на уеб сървъра и по този начин да се предостави достъп до публичния интерфейс от друг URL адрес (сървърът трябва да действа като прокси сървър в този нов URL адрес) +TicketUrlPublicInterfaceHelpAdmin=Възможно е да се дефинира псевдоним на уеб сървъра и по този начин да се предостави достъп до публичния интерфейс от друг URL адрес (сървърът трябва да действа като прокси сървър за този нов URL адрес) TicketPublicInterfaceTextHomeLabelAdmin=Приветстващ текст на публичния интерфейс -TicketPublicInterfaceTextHome=Може да създадете тикет в системата за управление и обслужване на запитвания или да прегледате съществуващ като използвате номера за проследяване и Вашият имейл адрес. -TicketPublicInterfaceTextHomeHelpAdmin=Текстът, определен тук, ще се появи на началната страница на публичния интерфейс. +TicketPublicInterfaceTextHome=Може да създадете тикет в системата за управление и обслужване на запитвания или да прегледате съществуващ като използвате номера за проследяване и вашият имейл адрес. +TicketPublicInterfaceTextHomeHelpAdmin=Текстът определен тук ще се появи на началната страница на публичния интерфейс. TicketPublicInterfaceTopicLabelAdmin=Заглавие на интерфейса TicketPublicInterfaceTopicHelp=Този текст ще се появи като заглавие на публичния интерфейс. TicketPublicInterfaceTextHelpMessageLabelAdmin=Помощен текст към съобщението TicketPublicInterfaceTextHelpMessageHelpAdmin=Този текст ще се появи над мястото с въведено съобщение от потребителя. ExtraFieldsTicket=Допълнителни атрибути TicketCkEditorEmailNotActivated=HTML редакторът не е активиран. Моля, задайте стойност 1 на константата FCKEDITOR_ENABLE_MAIL, за да го активирате. -TicketsDisableEmail=Не изпращай имейли при създаване или добавяне на съобщение -TicketsDisableEmailHelp=По подразбиране се изпращат имейли, когато са създадени нови тикети или съобщения. Активирайте тази опция, за да деактивирате *всички* известия по имейл +TicketsDisableEmail=Да не се изпращат имейли при създаване на тикет или добавяне на съобщение +TicketsDisableEmailHelp=По подразбиране се изпращат имейли, когато са създадени нови тикети или са добавени съобщения. Активирайте тази опция, за да деактивирате *всички* известия по имейл. TicketsLogEnableEmail=Активиране на вход с имейл -TicketsLogEnableEmailHelp=При всяка промяна ще бъде изпратен имейл **на всеки контакт**, свързан с тикета. +TicketsLogEnableEmailHelp=При всяка промяна ще бъде изпратен имейл *на всеки контакт*, свързан с тикета. TicketParams=Параметри TicketsShowModuleLogo=Показване на логото на модула в публичния интерфейс TicketsShowModuleLogoHelp=Активирайте тази опция, за да скриете логото на модула от страниците на публичния интерфейс @@ -116,7 +116,7 @@ TicketsShowCompanyLogo=Показване на логото на фирмата TicketsShowCompanyLogoHelp=Активирайте тази опция, за да скриете логото на основната фирма от страниците на публичния интерфейс TicketsEmailAlsoSendToMainAddress=Изпращане на известие до основния имейл адрес TicketsEmailAlsoSendToMainAddressHelp=Активирайте тази опция, за да изпратите имейл до "Известяващ имейл от" (вижте настройката по-долу) -TicketsLimitViewAssignedOnly=Ограничаване на показването на тикети до такива, които са назначени на текущия потребител (не е приложимо за външни потребители, винаги ще бъдат ограничени до контрагента, от който зависят) +TicketsLimitViewAssignedOnly=Ограничаване на показването на тикети до такива, които са възложени на текущия потребител (не е приложимо за външни потребители, винаги ще бъдат ограничени до контрагента, от който зависят) TicketsLimitViewAssignedOnlyHelp=Само тикети, възложени на текущия потребител ще бъдат показвани. Не важи за потребител с права за управление на тикети. TicketsActivatePublicInterface=Активиране на публичния интерфейс TicketsActivatePublicInterfaceHelp=Публичният интерфейс позволява на всички посетители да създават тикети. @@ -129,13 +129,13 @@ TicketsDisableCustomerEmail=Деактивиране на имейлите, ко # # Index & list page # -TicketsIndex=Начална страница +TicketsIndex=Секция за тикети TicketList=Списък с тикети -TicketAssignedToMeInfos=Тази страница показва списъка с тикети, създадени от или възложени на текущия потребител -NoTicketsFound=Няма намерен тикет +TicketAssignedToMeInfos=Тази страница показва списък с тикети, които са създадени от вас или са ви били възложени +NoTicketsFound=Няма намерени тикети NoUnreadTicketsFound=Не са открити непрочетени тикети TicketViewAllTickets=Преглед на всички тикети -TicketViewNonClosedOnly=Преглед на отворените тикети +TicketViewNonClosedOnly=Преглед на отворени тикети TicketStatByStatus=Тикети по статус # @@ -144,24 +144,24 @@ TicketStatByStatus=Тикети по статус Ticket=Тикет TicketCard=Карта CreateTicket=Създаване на тикет -EditTicket=Редактиране на тикет +EditTicket=Променяне на тикет TicketsManagement=Управление на тикети CreatedBy=Създаден от NewTicket=Нов тикет SubjectAnswerToTicket=Отговор на тикет TicketTypeRequest=Вид на тикета -TicketCategory=Аналитичен код +TicketCategory=Категория SeeTicket=Преглед на тикет TicketMarkedAsRead=Тикетът е маркиран като прочетен TicketReadOn=Прочетен на TicketCloseOn=Дата на приключване MarkAsRead=Маркиране на тикета като прочетен TicketHistory=История -AssignUser=Възлагане на служител +AssignUser=Възлагане на потребител TicketAssigned=Тикетът е възложен -TicketChangeType=Промяна на вида -TicketChangeCategory=Промяна на аналитичния код -TicketChangeSeverity=Промяна на важността +TicketChangeType=Променяне на вида +TicketChangeCategory=Променяне на категория +TicketChangeSeverity=Променяне на приоритет TicketAddMessage=Добавяне на съобщение AddMessage=Добавяне на съобщение MessageSuccessfullyAdded=Тикетът е добавен @@ -169,36 +169,36 @@ TicketMessageSuccessfullyAdded=Съобщението е успешно доба TicketMessagesList=Списък със съобщения NoMsgForThisTicket=Няма съобщение за този тикет Properties=Реквизити -LatestNewTickets=Тикети: %s най-нови тикета (непрочетени) -TicketSeverity=Важност +LatestNewTickets=Тикети: %s последни (непрочетени) +TicketSeverity=Приоритет ShowTicket=Преглед на тикет RelatedTickets=Свързани тикети TicketAddIntervention=Създаване на интервенция -CloseTicket=Затваряне на тикет -CloseATicket=Затваряне на тикет -ConfirmCloseAticket=Потвърдете затварянето на тикета -ConfirmDeleteTicket=Моля, потвърдете изтриването на билета +CloseTicket=Приключване на тикет +CloseATicket=Приключване на тикет +ConfirmCloseAticket=Потвърдете приключването на тикета +ConfirmDeleteTicket=Потвърдете изтриването на тикета TicketDeletedSuccess=Тикетът е успешно изтрит -TicketMarkedAsClosed=Тикетът е маркиран като затворен +TicketMarkedAsClosed=Тикетът е маркиран като приключен TicketDurationAuto=Изчислена продължителност TicketDurationAutoInfos=Продължителност, изчислена автоматично според необходимите действия TicketUpdated=Тикетът е актуализиран SendMessageByEmail=Изпращане на съобщение по имейл TicketNewMessage=Ново съобщение ErrorMailRecipientIsEmptyForSendTicketMessage=Полето за получател е празно, не беше изпратен имейл. -TicketGoIntoContactTab=Моля отидете в раздел "Контакти", откъдето може да изберете. +TicketGoIntoContactTab=Моля отидете в раздел "Контакти" откъдето може да изберете TicketMessageMailIntro=Въведение TicketMessageMailIntroHelp=Този текст се добавя само в началото на имейла и няма да бъде запазен. TicketMessageMailIntroLabelAdmin=Въведение към съобщението при изпращане на имейл -TicketMessageMailIntroText=Здравейте,
Беше добавено ново съобщение към тикет, за който сте асоцииран като контакт. Ето и съобщението:
-TicketMessageMailIntroHelpAdmin=Този текст ще бъде вмъкнат преди текста за отговор към тикета. +TicketMessageMailIntroText=Здравейте,
Беше добавено ново съобщение към тикет, в който сте посочен като контакт. Ето и съобщението:
+TicketMessageMailIntroHelpAdmin=Този текст ще бъде вмъкнат преди текста на съобщението към тикета. TicketMessageMailSignature=Подпис TicketMessageMailSignatureHelp=Този текст се добавя само в края на имейла и няма да бъде запазен. TicketMessageMailSignatureText=

Поздрави,

--

TicketMessageMailSignatureLabelAdmin=Подпис в отговора към имейла TicketMessageMailSignatureHelpAdmin=Този текст ще бъде вмъкнат след съобщението за отговор. TicketMessageHelp=Само този текст ще бъде запазен в списъка със съобщения към тикета. -TicketMessageSubstitutionReplacedByGenericValues=Заместващите променливи се заменят от стандартни стойности. +TicketMessageSubstitutionReplacedByGenericValues=Заместващите променливи се заменят с общи стойности. TimeElapsedSince=Изминало време TicketTimeToRead=Изминало време преди прочитане TicketContacts=Контакти @@ -211,16 +211,16 @@ MarkMessageAsPrivate=Маркиране на съобщението като л TicketMessagePrivateHelp=Това съобщение няма да се показва на външни потребители TicketEmailOriginIssuer=Контакт на контрагента проследяващ тикета InitialMessage=Първоначално съобщение -LinkToAContract=Свързване към договор +LinkToAContract=Връзка към договор TicketPleaseSelectAContract=Изберете договор -UnableToCreateInterIfNoSocid=Не може да бъде създадена интервенция без да бъде дефиниран контрагента +UnableToCreateInterIfNoSocid=Не може да бъде създадена интервенция преди да се посочи контрагент TicketMailExchanges=История на съобщенията TicketInitialMessageModified=Първоначалното съобщение е променено TicketMessageSuccesfullyUpdated=Съобщението е успешно актуализирано TicketChangeStatus=Промяна на статус TicketConfirmChangeStatus=Потвърдете промяната на статуса на: %s? TicketLogStatusChanged=Статусът е променен: от %s на %s -TicketNotNotifyTiersAtCreate=Не уведомява фирмата при създаването на тикета +TicketNotNotifyTiersAtCreate=Да не се уведомява фирмата при създаване на тикета Unread=Непрочетен # @@ -229,9 +229,9 @@ Unread=Непрочетен TicketLogMesgReadBy=Тикет %s е прочетен от %s NoLogForThisTicket=Все още няма запис за този тикет TicketLogAssignedTo=Тикет %s е възложен на %s -TicketLogPropertyChanged=Тикет %s е редактиран: класификация от %s на %s -TicketLogClosedBy=Тикет %s е затворен от %s -TicketLogReopen=Тикет %s е отворен повторно +TicketLogPropertyChanged=Тикет %s е класифициран от %s на %s +TicketLogClosedBy=Тикет %s е приключен от %s +TicketLogReopen=Тикет %s е повторно отворен # # Public pages @@ -239,21 +239,21 @@ TicketLogReopen=Тикет %s е отворен повторно TicketSystem=Тикет система ShowListTicketWithTrackId=Проследяване на списък с тикети ShowTicketWithTrackId=Проследяване на тикет -TicketPublicDesc=Може да създадете тикет или да проследите съществуващи като използвате кода за проследяване и Вашият имейл адрес. +TicketPublicDesc=Може да създадете тикет или да проследите съществуващи като използвате кода за проследяване и вашият имейл адрес. YourTicketSuccessfullySaved=Тикетът е успешно съхранен! MesgInfosPublicTicketCreatedWithTrackId=Беше създаден нов тикет с проследяващ код %s PleaseRememberThisId=Моля, запазете проследяващия код, за който може да ви попитаме по-късно. TicketNewEmailSubject=Потвърждение за създаване на тикет TicketNewEmailSubjectCustomer=Нов тикет TicketNewEmailBody=Това е автоматичен имейл, който потвърждава, че сте регистрирали нов тикет. -TicketNewEmailBodyCustomer=Това е автоматичен имейл, който потвърждава, че е създаден нов тикет във вашия фирмен профил. +TicketNewEmailBodyCustomer=Това е автоматичен имейл, който потвърждава, че е създаден нов тикет във вашият фирмен профил. TicketNewEmailBodyInfosTicket=Информация за наблюдение на тикета TicketNewEmailBodyInfosTrackId=Проследяващ код на тикета: %s TicketNewEmailBodyInfosTrackUrl=Може да следите напредъка по тикета като кликнете на връзката по-горе. TicketNewEmailBodyInfosTrackUrlCustomer=Може да следите напредъка по тикета в специалния интерфейс като кликнете върху следната връзка TicketEmailPleaseDoNotReplyToThisEmail=Моля, не отговаряйте директно на този имейл! Използвайте връзката, за да отговорите, чрез интерфейса. TicketPublicInfoCreateTicket=Тази форма позволява да регистрирате тикет в системата за управление и обслужване на запитвания. -TicketPublicPleaseBeAccuratelyDescribe=Моля, опишете точно проблема. Посочете възможно най-много информация, за да ни позволите да идентифицираме правилно това запитване. +TicketPublicPleaseBeAccuratelyDescribe=Моля, опишете подробно проблема. Посочете възможно най-много информация, за да ни позволите да идентифицираме правилно това запитване. TicketPublicMsgViewLogIn=Моля, въведете проследяващ код и имейл адрес TicketTrackId=Код за проследяване OneOfTicketTrackId=Код за проследяване @@ -273,11 +273,11 @@ NumberOfTicketsByMonth=Брой тикети на месец NbOfTickets=Брой тикети # notifications TicketNotificationEmailSubject=Тикет с проследяващ код %s е актуализиран -TicketNotificationEmailBody=Здравейте,\nТова е автоматично съобщение, което има за цел да Ви уведоми, че тикет с проследяващ код %s е бил наскоро актуализиран. -TicketNotificationRecipient=Получател на уведомлението +TicketNotificationEmailBody=Здравейте,\nТова е автоматично съобщение, което има за цел да ви уведоми, че тикет с проследяващ код %s е актуализиран. +TicketNotificationRecipient=Получател на известието TicketNotificationLogMessage=Съобщение в историята TicketNotificationEmailBodyInfosTrackUrlinternal=Вижте тикета в системата -TicketNotificationNumberEmailSent=Изпратено уведомление по имейл: %s +TicketNotificationNumberEmailSent=Изпратени известия по имейл: %s ActionsOnTicket=Свързани събития diff --git a/htdocs/langs/bg_BG/users.lang b/htdocs/langs/bg_BG/users.lang index 149d5652857..9e29ab5b1f6 100644 --- a/htdocs/langs/bg_BG/users.lang +++ b/htdocs/langs/bg_BG/users.lang @@ -1,15 +1,15 @@ # Dolibarr language file - Source file is en_US - users -HRMArea=Секция човешки ресурси -UserCard=Карта на потребител -GroupCard=Карта на група +HRMArea=Секция за човешки ресурси +UserCard=Карта +GroupCard=Карта Permission=Разрешение Permissions=Права -EditPassword=Редактиране на парола +EditPassword=Променяне на парола SendNewPassword=Регенериране и изпращане на парола -SendNewPasswordLink=Връзка за възстановяване на парола +SendNewPasswordLink=Изпращане на връзка за парола ReinitPassword=Регенериране на парола PasswordChangedTo=Паролата е променена на: %s -SubjectNewPassword=Новата ви парола за %s +SubjectNewPassword=Вашата нова парола за %s GroupRights=Групови права UserRights=Потребителски права UserGUISetup=Настройка на потребителския интерфейс @@ -28,9 +28,9 @@ ConfirmReinitPassword=Сигурни ли сте, че искате да ген ConfirmSendNewPassword=Сигурни ли сте, че искате да генерирате и изпратите нова парола за потребител %s? NewUser=Нов потребител CreateUser=Създаване на потребител -LoginNotDefined=Входната информация не е дефинирана. +LoginNotDefined=Не е дефинирано потребителско име. NameNotDefined=Името не е дефинирано. -ListOfUsers=Списък потребители +ListOfUsers=Списък на потребители SuperAdministrator=Супер администратор SuperAdministratorDesc=Глобален администратор AdministratorDesc=Администратор @@ -39,7 +39,7 @@ DefaultRightsDesc=Определете тук правата по подра DolibarrUsers=Потребители на системата LastName=Фамилия FirstName=Собствено име -ListOfGroups=Списък на групите +ListOfGroups=Списък на групи NewGroup=Нова група CreateGroup=Създаване на група RemoveFromGroup=Премахване от групата @@ -50,14 +50,14 @@ ConfirmPasswordReset=Потвърдете възстановяване на па MenuUsersAndGroups=Потребители и групи LastGroupsCreated=Групи: %s последно създадени LastUsersCreated=Потребители: %s последно създадени -ShowGroup=Покажи групата -ShowUser=Покажи потребителя +ShowGroup=Показване на група +ShowUser=Показване на потребител NonAffectedUsers=Не присвоени потребители -UserModified=Потребителят е успешно редактиран +UserModified=Потребителят е успешно променен PhotoFile=Снимка ListOfUsersInGroup=Списък на потребителите в тази група ListOfGroupsForUser=Списък на групите за този потребител -LinkToCompanyContact=Свързване към контрагент/контакт +LinkToCompanyContact=Свързване към контрагент / контакт LinkedToDolibarrMember=Свързване към член LinkedToDolibarrUser=Свързване към потребител на системата LinkedToDolibarrThirdParty=Свързване към контрагент @@ -74,8 +74,8 @@ InternalExternalDesc=Вътрешния потребител е потр PermissionInheritedFromAGroup=Разрешението е предоставено, тъй като е наследено от една от групите на потребителя. Inherited=Наследено UserWillBeInternalUser=Създаденият потребителят ще бъде вътрешен потребител (тъй като не е свързан с определен контрагент) -UserWillBeExternalUser=Създаденият потребителят ще бъде външен потребител (защото е свързани с определен контрагент) -IdPhoneCaller=Идентификация на повикващия +UserWillBeExternalUser=Създаденият потребителят ще бъде външен потребител (защото е свързан с определен контрагент) +IdPhoneCaller=Идентификатор на повикващия NewUserCreated=Потребител %s е създаден NewUserPassword=Промяна на паролата за %s EventUserModified=Потребител %s е променен @@ -88,7 +88,7 @@ GroupDeleted=Група %s е премахната ConfirmCreateContact=Сигурни ли сте, че искате да създадете Dolibarr профил за този контакт? ConfirmCreateLogin=Сигурни ли сте, че искате да създадете Dolibarr профил за този член? ConfirmCreateThirdParty=Сигурни ли сте, че искате да създадете контрагент за този член? -LoginToCreate=Данни за вход за създаване +LoginToCreate=Потребителско име NameToCreate=Име на контрагент за създаване YourRole=Вашите роли YourQuotaOfUsersIsReached=Вашата квота за активни потребители е достигната! @@ -109,4 +109,4 @@ UserLogoff=Излизане от потребителя UserLogged=Потребителят е регистриран DateEmployment=Дата на назначаване DateEmploymentEnd=Дата на освобождаване -CantDisableYourself=You can't disable your own user record +CantDisableYourself=Не можете да забраните собствения си потребителски запис diff --git a/htdocs/langs/bg_BG/withdrawals.lang b/htdocs/langs/bg_BG/withdrawals.lang index 149fec6aa7c..efae12ef41d 100644 --- a/htdocs/langs/bg_BG/withdrawals.lang +++ b/htdocs/langs/bg_BG/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Зададен към статус "Файл Изпратен" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Статистики по статуса на линиите -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/bg_BG/workflow.lang b/htdocs/langs/bg_BG/workflow.lang index 71026fb3062..dec1f41bc78 100644 --- a/htdocs/langs/bg_BG/workflow.lang +++ b/htdocs/langs/bg_BG/workflow.lang @@ -6,13 +6,13 @@ ThereIsNoWorkflowToModify=Няма налични промени на работ descWORKFLOW_PROPAL_AUTOCREATE_ORDER=Автоматично създаване на клиентска поръчка след подписване на търговско предложение (новата поръчка ще има същата стойност като на предложение) descWORKFLOW_PROPAL_AUTOCREATE_INVOICE=Автоматично създаване на клиентска фактура след подписване на търговско предложение (новата фактура ще има същата стойност като на предложението) descWORKFLOW_CONTRACT_AUTOCREATE_INVOICE=Автоматично създаване на клиентска фактура след валидиране на договор -descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Автоматично създаване на клиентска фактура след затваряне на клиентска поръчка (новата фактура ще има същата стойност като на поръчката) +descWORKFLOW_ORDER_AUTOCREATE_INVOICE=Автоматично създаване на фактура за продажба след приключване на поръчка за продажба (новата фактура ще има същата стойност като на поръчката) # Autoclassify customer proposal or order descWORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL=Класифициране на свързано търговско предложение - първоизточник като фактурирано след класифициране на клиентска поръчка като фактурирана (и ако стойността на поръчката е същата като общата сума на подписаното свързано предложение) descWORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL=Класифициране на свързано търговско предложение - първоизточник като фактурирано след валидиране на клиентска фактура (и ако стойността на фактурата е същата като общата сума на подписаното свързано предложение) descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Класифициране на свързана клиентска поръчка - първоизточник като фактурирана след валидиране на клиентска фактура (и ако стойността на фактурата е същата като общата сума на свързаната поръчка) descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Класифициране на свързана клиентска поръчка - първоизточник като фактурирана след плащане на клиентска фактура (и ако стойността на фактурата е същата като общата сума на свързаната поръчка) -descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Класифициране на свързана клиентска поръчка - първоизточник като изпратена след валидиране на пратка (и ако количеството, изпратено, чрез всички пратки е същото като в поръчката за актуализиране) +descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Класифициране на свързана клиентска поръчка - първоизточник като изпратена след валидиране на доставка (и ако количеството, изпратено, чрез всички пратки е същото като в поръчката за актуализиране) # Autoclassify purchase order descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Класифициране на свързаното за запитване към доставчик - първоизточник като фактурираното след валидиране на доставната фактура (и ако стойността на фактурата е същата като общата сума на свързаното запитване) descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Класифициране на свързаната поръчка за покупка - първоизточник като фактурирана след валидиране на доставна фактура (и ако стойността на фактурата е същата като общата сума на свързаната поръчка) diff --git a/htdocs/langs/bn_BD/accountancy.lang b/htdocs/langs/bn_BD/accountancy.lang index 758d9c340a5..1fc3b3e05ec 100644 --- a/htdocs/langs/bn_BD/accountancy.lang +++ b/htdocs/langs/bn_BD/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/bn_BD/admin.lang b/htdocs/langs/bn_BD/admin.lang index f30d6edd9f7..2e27c6fe81f 100644 --- a/htdocs/langs/bn_BD/admin.lang +++ b/htdocs/langs/bn_BD/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/bn_BD/bills.lang b/htdocs/langs/bn_BD/bills.lang index 4467e38e1e7..d977c564e29 100644 --- a/htdocs/langs/bn_BD/bills.lang +++ b/htdocs/langs/bn_BD/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show deposit invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/bn_BD/errors.lang b/htdocs/langs/bn_BD/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/bn_BD/errors.lang +++ b/htdocs/langs/bn_BD/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/bn_BD/main.lang b/htdocs/langs/bn_BD/main.lang index b930ecc464e..bd4ae2153bf 100644 --- a/htdocs/langs/bn_BD/main.lang +++ b/htdocs/langs/bn_BD/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/bn_BD/products.lang b/htdocs/langs/bn_BD/products.lang index 7b68f5b3ebd..73e672284de 100644 --- a/htdocs/langs/bn_BD/products.lang +++ b/htdocs/langs/bn_BD/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/bn_BD/stripe.lang b/htdocs/langs/bn_BD/stripe.lang index 7a3389f34b7..c5224982873 100644 --- a/htdocs/langs/bn_BD/stripe.lang +++ b/htdocs/langs/bn_BD/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/bn_BD/withdrawals.lang b/htdocs/langs/bn_BD/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/bn_BD/withdrawals.lang +++ b/htdocs/langs/bn_BD/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/bs_BA/accountancy.lang b/htdocs/langs/bs_BA/accountancy.lang index bf7de1af534..ffe0857e269 100644 --- a/htdocs/langs/bs_BA/accountancy.lang +++ b/htdocs/langs/bs_BA/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/bs_BA/admin.lang b/htdocs/langs/bs_BA/admin.lang index a8fe248b017..3b1cbfdb1bc 100644 --- a/htdocs/langs/bs_BA/admin.lang +++ b/htdocs/langs/bs_BA/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifikacije +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Dopunske atributa (naloga) ExtraFieldsSupplierInvoices=Dopunski atributi (fakture) ExtraFieldsProject=Dopunski atributi (projekti) ExtraFieldsProjectTask=Dopunski atributi (zadaci) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Optimizacija pretraživanja -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache je učitan. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/bs_BA/bills.lang b/htdocs/langs/bs_BA/bills.lang index abe5086202e..54c351b94e9 100644 --- a/htdocs/langs/bs_BA/bills.lang +++ b/htdocs/langs/bs_BA/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Uplata viša od zaostalog duga HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Označi kao 'Plaćeno' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Označi kao 'Djelimično plaćeno' ClassifyCanceled=Označi kao 'Otkazano' ClassifyClosed=Označi kao 'Zaključeno' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Prikaži zamjensku fakturu ShowInvoiceAvoir=Prikaži dobropis ShowInvoiceDeposit=Pokaži avansne fakture ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Prikaži uplatu AlreadyPaid=Već plaćeno AlreadyPaidBack=Već izvršen povrat uplate diff --git a/htdocs/langs/bs_BA/errors.lang b/htdocs/langs/bs_BA/errors.lang index 2f1d689e63b..d4da3b43f7a 100644 --- a/htdocs/langs/bs_BA/errors.lang +++ b/htdocs/langs/bs_BA/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/bs_BA/main.lang b/htdocs/langs/bs_BA/main.lang index 668e4b3bc9f..33ca3105dea 100644 --- a/htdocs/langs/bs_BA/main.lang +++ b/htdocs/langs/bs_BA/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakti/adrese za ovaj subjekt AddressesForCompany=Adrese za ovaj subjekt ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Događaji o ovom članu ActionsOnProduct=Događaji o ovom proizvodu NActionsLate=%s kasne @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link ka kontaktima LinkToIntervention=Link ka intervencijama +LinkToTicket=Link to ticket CreateDraft=Kreiraj nacrt SetToDraft=Nazad na nacrt ClickToEdit=Klikni za uređivanje diff --git a/htdocs/langs/bs_BA/products.lang b/htdocs/langs/bs_BA/products.lang index 552db428cf4..69668f08904 100644 --- a/htdocs/langs/bs_BA/products.lang +++ b/htdocs/langs/bs_BA/products.lang @@ -2,6 +2,7 @@ ProductRef=Ref. proizvoda ProductLabel=Oznaka proizvoda ProductLabelTranslated=Prevedeni naslov proizvoda +ProductDescription=Product description ProductDescriptionTranslated=Prevedeni opis proizvoda ProductNoteTranslated=Prevedena napomena proizvoda ProductServiceCard=Kartica proizvoda/usluge diff --git a/htdocs/langs/bs_BA/stripe.lang b/htdocs/langs/bs_BA/stripe.lang index 1ce18d76333..4cf01154660 100644 --- a/htdocs/langs/bs_BA/stripe.lang +++ b/htdocs/langs/bs_BA/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/bs_BA/withdrawals.lang b/htdocs/langs/bs_BA/withdrawals.lang index 1d21628ded7..9ed0ddbf482 100644 --- a/htdocs/langs/bs_BA/withdrawals.lang +++ b/htdocs/langs/bs_BA/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/ca_ES/accountancy.lang b/htdocs/langs/ca_ES/accountancy.lang index 951da450713..06ddc2b794d 100644 --- a/htdocs/langs/ca_ES/accountancy.lang +++ b/htdocs/langs/ca_ES/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Diari de comptabilitat AccountingJournal=Diari comptable NewAccountingJournal=Nou diari comptable ShowAccoutingJournal=Mostrar diari comptable -Nature=Caràcter +NatureOfJournal=Nature of Journal AccountingJournalType1=Operacions diverses AccountingJournalType2=Vendes AccountingJournalType3=Compres @@ -291,6 +291,7 @@ Modelcsv_quadratus=Exporta a Quadratus QuadraCompta Modelcsv_ebp=Exporta a EBP Modelcsv_cogilog=Exporta a Cogilog Modelcsv_agiris=Exporta a Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Exporta per a OpenConcerto (Test) Modelcsv_configurable=Exporta CSV configurable Modelcsv_FEC=Exporta FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Id pla comptable InitAccountancy=Inicialitza la comptabilitat InitAccountancyDesc=Aquesta pàgina es pot utilitzar per inicialitzar un compte de comptabilitat en productes i serveis que no tenen compte comptable definit per a vendes i compres. DefaultBindingDesc=Aquesta pàgina pot ser utilitzat per establir un compte per defecte que s'utilitzarà per enllaçar registre de transaccions sobre els pagament de salaris, donació, impostos i IVA quan no hi ha encara compte comptable específic definit. -DefaultClosureDesc=Aquesta pàgina es pot utilitzar per configurar els paràmetres que s'utilitzaran per incloure un balanç. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Opcions OptionModeProductSell=En mode vendes OptionModeProductSellIntra=Les vendes de mode exportades a la CEE diff --git a/htdocs/langs/ca_ES/admin.lang b/htdocs/langs/ca_ES/admin.lang index 3c580544f54..ebaaccb4947 100644 --- a/htdocs/langs/ca_ES/admin.lang +++ b/htdocs/langs/ca_ES/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaris Module510Desc=Registre i seguiment del pagament dels salaris dels empleats Module520Name=Préstecs Module520Desc=Gestió de préstecs -Module600Name=Notificacions +Module600Name=Notifications on business event Module600Desc=Envieu notificacions per correu electrònic activades per un esdeveniment empresarial: per usuari (configuració definit a cada usuari), per a contactes de tercers (configuració definida en cada tercer) o per correus electrònics específics Module600Long=Tingueu en compte que aquest mòdul està dedicat a enviar correus electrònics en temps real quan es produeix un esdeveniment de negoci específic. Si cerqueu una característica per enviar recordatoris per correu electrònic dels esdeveniments de l'agenda, aneu a la configuració del mòdul Agenda. Module610Name=Variants de producte @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Atributs complementaris (comandes) ExtraFieldsSupplierInvoices=Atributs complementaris (factures) ExtraFieldsProject=Atributs complementaris (projectes) ExtraFieldsProjectTask=Atributs complementaris (tasques) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=L'atribut %s té un valor no valid AlphaNumOnlyLowerCharsAndNoSpace=només caràcters alfanumèrics i en minúscula sense espai SendmailOptionNotComplete=Atenció, en alguns sistemes Linux, amb aquest mètode d'enviament, per poder enviar mails en nom seu, la configuració de sendmail ha de contenir l'opció -ba (paràmetre mail.force_extra_parameters a l'arxiu php.ini). Si alguns dels seus destinataris no reben els seus missatges, proveu de modificar aquest paràmetre PHP amb mail.force_extra_parameters =-ba . @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Emmagatzematge de sessions xifrades per Suhosin ConditionIsCurrently=Actualment la condició és %s YouUseBestDriver=Utilitzeu el controlador %s, que és el millor controlador disponible actualment. YouDoNotUseBestDriver=S'utilitza el controlador %s, però es recomana utilitzar el controlador %s. -NbOfProductIsLowerThanNoPb=Només teniu %s productes / serveis a la base de dades. Això no requereix cap optimització en particular. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Cerca optimització -YouHaveXProductUseSearchOptim=Teniu productes %s a la base de dades. Heu d'afegir la constant PRODUCT_DONOTSEARCH_ANYHERE a 1 a la pàgina d'inici: Configuració-Un altre. Limiteu la cerca al començament de les cadenes que permeti que la base de dades utilitzi índexs i que obtingueu una resposta immediata. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Esteu utilitzant el navegador web %s. Aquest navegador està bé per a la seguretat i el rendiment. BrowserIsKO=Esteu utilitzant el navegador web %s. Es considera que aquest navegador és una mala elecció per a la seguretat, el rendiment i la fiabilitat. Recomanem utilitzar Firefox, Chrome, Opera o Safari. -XDebugInstalled=XDebug està carregat. -XCacheInstalled=XCache cau està carregat. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Mostrar client / proveïdor ref. llista d'informació (llista de selecció o combobox) i la majoria d'hipervincle.
Els tercers apareixeran amb un format de nom de "CC12345 - SC45678 - The Big Company corp". en lloc de "The Big Company corp". AddAdressInList=Mostra la llista d'informació de la direcció de client / proveïdor (llista de selecció o combobox)
Els tercers apareixeran amb un format de nom de "The Big Company corp. - 21 jump street 123456 Big town - USA" en lloc de "The Big Company corp". AskForPreferredShippingMethod=Demaneu un mètode d'enviament preferit per a tercers. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Configurar mòdul Informes de despeses - Regles ExpenseReportNumberingModules=Número del mòdul Informe de despeses NoModueToManageStockIncrease=No esta activat el mòdul per gestionar automàticament l'increment d'estoc. L'increment d'estoc es realitzara només amb l'entrada manual YouMayFindNotificationsFeaturesIntoModuleNotification=Podeu trobar opcions de notificacions per correu electrònic habilitant i configurant el mòdul "Notificació". -ListOfNotificationsPerUser=Llista de notificacions per usuari* -ListOfNotificationsPerUserOrContact=Llista de notificacions (esdeveniments) disponibles per usuari * o per contacte ** -ListOfFixedNotifications=Llista de notificacions fixes +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Ves a la pestanya "Notificacions" d'un usuari per afegir o eliminar notificacions per usuaris. GoOntoContactCardToAddMore=Vagi a la pestanya "Notificacions" d'un contacte de tercers per afegir o eliminar notificacions per contactes/direccions Threshold=Valor mínim/llindar @@ -1898,6 +1900,11 @@ OnMobileOnly=Només en pantalla petita (telèfon intel·ligent) DisableProspectCustomerType=Desactiveu el tipus de tercers "Prospect + Customer" (per tant, un tercer ha de ser Client o Client Potencial, però no pot ser ambdues) MAIN_OPTIMIZEFORTEXTBROWSER=Simplifica la interfície per a persones cegues MAIN_OPTIMIZEFORTEXTBROWSERDesc=Activa aquesta opció si ets cec o si fas servir l'aplicació des d'un navegador de text com ara Lynx o Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Aquest valor es pot sobreescriure per cada usuari des de la pestanya de la pàgina d'usuari '%s' DefaultCustomerType=Tipus de tercer predeterminat per al formulari de creació "Nou client" ABankAccountMustBeDefinedOnPaymentModeSetup=Nota: el compte bancari s'ha de definir al mòdul de cada mode de pagament (Paypal, Stripe, ...) per tal que funcioni aquesta funció. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Nombre de línies que es mostraran a la pestanya de registres UseDebugBar=Utilitzeu la barra de depuració DEBUGBAR_LOGS_LINES_NUMBER=Nombre d’últimes línies de registre que cal mantenir a la consola WarningValueHigherSlowsDramaticalyOutput=Advertència, els valors més alts frenen molt la producció -DebugBarModuleActivated=Quan la barra de depuració del mòdul està activada frena molt la interfície +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Els models d’exportació es comparteixen amb tothom ExportSetup=Configuració del mòdul Export InstanceUniqueID=ID únic de la instància @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=El trobareu al vostre compte IFTTT EndPointFor=Punt final per %s: %s DeleteEmailCollector=Suprimeix el recollidor de correu electrònic ConfirmDeleteEmailCollector=Esteu segur que voleu suprimir aquest recollidor de correu electrònic? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/ca_ES/bills.lang b/htdocs/langs/ca_ES/bills.lang index 21384e91364..3f4cf8efab3 100644 --- a/htdocs/langs/ca_ES/bills.lang +++ b/htdocs/langs/ca_ES/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Pagament superior a la resta a pagar HelpPaymentHigherThanReminderToPay=Atenció, l'import del pagament d'una o més factures és superior a la resta a pagar.
Corregiu la entrada, en cas contrari, confirmeu i pensi en crear un abonament d'allò percebut en excés per cada factura sobrepagada. HelpPaymentHigherThanReminderToPaySupplier=Atenció, l'import del pagament d'una o més factures és superior a la resta a pagar.
Corregiu la entrada, en cas contrari, confirmeu i pensi en crear un abonament d'allò percebut en excés per cada factura sobrepagada. ClassifyPaid=Classificar 'Pagat' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classificar 'Pagat parcialment' ClassifyCanceled=Classificar 'Abandonat' ClassifyClosed=Classificar 'Tancat' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Veure factura rectificativa ShowInvoiceAvoir=Veure abonament ShowInvoiceDeposit=Mostrar factura d'acompte ShowInvoiceSituation=Mostra la factura de situació +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Veure pagament AlreadyPaid=Ja pagat AlreadyPaidBack=Ja reemborsat diff --git a/htdocs/langs/ca_ES/errors.lang b/htdocs/langs/ca_ES/errors.lang index bbe1bd29076..51c3ff9926e 100644 --- a/htdocs/langs/ca_ES/errors.lang +++ b/htdocs/langs/ca_ES/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Els caràcters especials no són admesos pel ErrorNumRefModel=Hi ha una referència a la base de dades (%s) i és incompatible amb aquesta numeració. Elimineu la línia o renomeneu la referència per activar aquest mòdul. ErrorQtyTooLowForThisSupplier=Quantitat massa baixa per aquest proveïdor o sense un preu definit en aquest producte per aquest proveïdor ErrorOrdersNotCreatedQtyTooLow=Algunes ordres no s'han creat a causa de quantitats massa baixes -ErrorModuleSetupNotComplete=La configuració de mòduls sembla incompleta. Ves a Inici - Configuració - Mòduls a completar. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error en la màscara ErrorBadMaskFailedToLocatePosOfSequence=Error, sense número de seqüència en la màscara ErrorBadMaskBadRazMonth=Error, valor de tornada a 0 incorrecte @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=L'URL %s ha de començar amb http: // o https: // ErrorNewRefIsAlreadyUsed=Error, la nova referència ja s’està utilitzant ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, l’eliminació del pagament vinculat a una factura tancada no és possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=S'ha indicat una contrasenya per aquest soci. En canvi, no s'ha creat cap compte d'usuari, de manera que aquesta contrasenya s'ha desat però no pot ser utilitzada per entrar a Dolibarr. Es pot utilitzar per un mòdul/interfície extern, però si no cal definir cap usuari i contrasenya per un soci, pots deshabilitar la opció "Gestiona l'entrada per tots els socis" des de la configuració del mòdul Socis. Si necessites gestionar una entrada sense contrasenya, pots mantenir aquest camp buit i permetre aquest avís. Nota: El correu electrònic es pot utilitzar per entrar si el soci està enllaçat a un usuarí WarningMandatorySetupNotComplete=Feu clic aquí per configurar els paràmetres obligatoris WarningEnableYourModulesApplications=Feu clic aquí per activar els vostres mòduls i aplicacions diff --git a/htdocs/langs/ca_ES/main.lang b/htdocs/langs/ca_ES/main.lang index 11b3567c2ae..d4c5c98696c 100644 --- a/htdocs/langs/ca_ES/main.lang +++ b/htdocs/langs/ca_ES/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contactes/adreces d'aquest tercer AddressesForCompany=Adreces d'aquest tercer ActionsOnCompany=Esdeveniments per a aquest tercer ActionsOnContact=Esdeveniments per a aquest contacte / adreça +ActionsOnContract=Events for this contract ActionsOnMember=Esdeveniments d'aquest soci ActionsOnProduct=Esdeveniments sobre aquest producte NActionsLate=%s en retard @@ -759,6 +760,7 @@ LinkToSupplierProposal=Enllaç al pressupost del venedor LinkToSupplierInvoice=Enllaç a la factura del venedor LinkToContract=Enllaça a contracte LinkToIntervention=Enllaça a intervenció +LinkToTicket=Link to ticket CreateDraft=Crea esborrany SetToDraft=Tornar a redactar ClickToEdit=Clic per a editar diff --git a/htdocs/langs/ca_ES/products.lang b/htdocs/langs/ca_ES/products.lang index 4605e1a6df9..cbdf58c6729 100644 --- a/htdocs/langs/ca_ES/products.lang +++ b/htdocs/langs/ca_ES/products.lang @@ -2,6 +2,7 @@ ProductRef=Ref. producte ProductLabel=Etiqueta producte ProductLabelTranslated=Etiqueta de producte traduïda +ProductDescription=Product description ProductDescriptionTranslated=Descripció de producte traduïda ProductNoteTranslated=Nota de producte traduïda ProductServiceCard=Fitxa producte/servei diff --git a/htdocs/langs/ca_ES/stripe.lang b/htdocs/langs/ca_ES/stripe.lang index 044768eb87c..1592435e8e5 100644 --- a/htdocs/langs/ca_ES/stripe.lang +++ b/htdocs/langs/ca_ES/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=Compte d'usuari per utilitzar en alguns e-mails de n StripePayoutList=Llista de pagaments de Stripe ToOfferALinkForTestWebhook=Enllaç a la configuració de Stripe WebHook per trucar a l’IPN (mode de prova) ToOfferALinkForLiveWebhook=Enllaç a la configuració de Stripe WebHook per trucar a l’IPN (mode en directe) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/ca_ES/withdrawals.lang b/htdocs/langs/ca_ES/withdrawals.lang index ecf3b20eeff..42a67f6c4ab 100644 --- a/htdocs/langs/ca_ES/withdrawals.lang +++ b/htdocs/langs/ca_ES/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Arxiu de la domiciliació SetToStatusSent=Classificar com "Arxiu enviat" ThisWillAlsoAddPaymentOnInvoice=Això també registrarà els pagaments a les factures i les classificarà com a "Pagades" quan el que resti per pagar sigui nul StatisticsByLineStatus=Estadístiques per estats de línies -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Referència de mandat única (UMR) RUMWillBeGenerated=Si està buit, es generarà una UMR (Referència de mandat únic) una vegada que es guardi la informació del compte bancari. WithdrawMode=Modo de domiciliació bancària (FRST o RECUR) diff --git a/htdocs/langs/cs_CZ/accountancy.lang b/htdocs/langs/cs_CZ/accountancy.lang index 2291178ee74..8df9d50c2c7 100644 --- a/htdocs/langs/cs_CZ/accountancy.lang +++ b/htdocs/langs/cs_CZ/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=účetní deníky AccountingJournal=Účetní deník NewAccountingJournal=Nový účetní deník ShowAccoutingJournal=Zobrazit účetní deník -Nature=Příroda +NatureOfJournal=Nature of Journal AccountingJournalType1=Různé operace AccountingJournalType2=Odbyt AccountingJournalType3=Nákupy @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export pro Quadratus QuadraCompta Modelcsv_ebp=Export pro EBP Modelcsv_cogilog=Export pro Cogilog Modelcsv_agiris=Export pro Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV konfigurovatelný Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Schéma Id účtů InitAccountancy=Init účetnictví InitAccountancyDesc=Tato stránka může být použita k inicializaci účetnictví u produktů a služeb, které nemají účetní účet definovaný pro prodej a nákup. DefaultBindingDesc=Tato stránka může být použita k nastavení výchozího účtu, který bude použit pro propojení záznamů o platbách, darování, daních a DPH, pokud již nebyl stanoven žádný účet. -DefaultClosureDesc=Tato stránka může být použita pro nastavení parametrů, které se mají použít k uzavření rozvahy. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=možnosti OptionModeProductSell=prodejní režim OptionModeProductSellIntra=Režim prodeje vyváženého v EHS diff --git a/htdocs/langs/cs_CZ/admin.lang b/htdocs/langs/cs_CZ/admin.lang index 57c17f66bca..f9d993354d7 100644 --- a/htdocs/langs/cs_CZ/admin.lang +++ b/htdocs/langs/cs_CZ/admin.lang @@ -574,7 +574,7 @@ Module510Name=Platy Module510Desc=Zaznamenejte a sledujte platby zaměstnanců Module520Name=Úvěry Module520Desc=Správa úvěrů -Module600Name=Upozornění +Module600Name=Notifications on business event Module600Desc=Odeslání e-mailových upozornění vyvolaných podnikovou událostí: na uživatele (nastavení definované pro každého uživatele), na kontakty třetích stran (nastavení definováno na každé třetí straně) nebo na konkrétní e-maily Module600Long=Všimněte si, že tento modul pošle e-maily v reálném čase, když nastane konkrétní událost. Pokud hledáte funkci pro zasílání upozornění na události agend, přejděte do nastavení modulu Agenda. Module610Name=Varianty produktu @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Doplňkové atributy (objednávky) ExtraFieldsSupplierInvoices=Doplňkové atributy (faktury) ExtraFieldsProject=Doplňkové atributy (projekty) ExtraFieldsProjectTask=Doplňkové atributy (úkoly) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Atribut %s má nesprávnou hodnotu. AlphaNumOnlyLowerCharsAndNoSpace=pouze alfanumerické znaky s malými písmeny bez mezer SendmailOptionNotComplete=Upozornění, že v některých systémech Linux můžete odesílat e-maily z vašeho e-mailu, nastavení spuštění sendmail musí obsahovat volbu -ba (parametr mail.force_extra_parameters do souboru php.ini). Pokud někteří příjemci nikdy neobdrží e-maily, zkuste upravit tento parametr PHP mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage šifrované Suhosinem ConditionIsCurrently=Podmínkou je v současné době %s YouUseBestDriver=Používáte ovladač %s, který je v současné době nejlepší ovladač. YouDoNotUseBestDriver=Používáte ovladač %s, ale doporučuje se ovladač %s. -NbOfProductIsLowerThanNoPb=V databázi máte pouze produkty / služby %s. To nevyžaduje žádnou konkrétní optimalizaci. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Optimalizace pro vyhledávače -YouHaveXProductUseSearchOptim=V databázi máte produkty %s. Měli byste přidat konstantní PRODUCT_DONOTSEARCH_ANYWHERE na 1 v Home-Setup-Other. Omezit vyhledávání na začátek řetězce, což umožňuje, aby databáze používala indexy a měli byste okamžitě reagovat. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Používáte webový prohlížeč %s. Tento prohlížeč je v pořádku pro zabezpečení a výkon. BrowserIsKO=Používáte webový prohlížeč %s. Tento prohlížeč je znám jako špatná volba pro zabezpečení, výkon a spolehlivost. Doporučujeme používat prohlížeče Firefox, Chrome, Opera nebo Safari. -XDebugInstalled=Xdebug je načten. -XCacheInstalled=XCache načten. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Zobrazit číslo zákazníka / dodavatele seznam informací (vyberte seznam nebo kombinace) a většinu hypertextových odkazů.
Zobrazí se třetí strany s názvem formátu "CC12345 - SC45678 - The Big Company corp". místo "The Big Company corp". AddAdressInList=Zobrazte seznam informací o adresách zákazníků / prodejců (vyberte seznam nebo kombinace)
Subjekty se objeví ve formátu "Big Company Corp. - 21 skokové ulici 123456 Big City - USA" namísto "The Big Company corp". AskForPreferredShippingMethod=Požádejte o preferovanou způsob přepravy pro subjekty. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Nastavení výkazu výdajů modulu - pravidla ExpenseReportNumberingModules=Způsob číslování výkazů výdajů NoModueToManageStockIncrease=Nebyl aktivován žádný modul schopný zvládnout automatické zvýšení zásob. Zvýšení zásob bude provedeno pouze při ručním zadávání. YouMayFindNotificationsFeaturesIntoModuleNotification=Možnosti upozornění na e-mail můžete najít povolením a konfigurací modulu "Oznámení". -ListOfNotificationsPerUser=Seznam oznámení na uživatele * -ListOfNotificationsPerUserOrContact=Seznam oznámení (událostí) dostupných na uživatele * nebo na kontakt ** -ListOfFixedNotifications=Seznam pevných oznámení +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Přejděte na kartu "Oznámení" uživatele, chcete-li přidat nebo odstranit oznámení pro uživatele GoOntoContactCardToAddMore=Přejděte na kartu "Oznámení" subjektu, chcete-li přidat nebo odstranit oznámení kontaktů / adres Threshold=Práh @@ -1898,6 +1900,11 @@ OnMobileOnly=Pouze na malé obrazovce (smartphone) DisableProspectCustomerType=Zakázat typ subjektu "Prospekt + zákazník" (takže subjekt musí být prospekt nebo zákazník, ale nemůže být oběma) MAIN_OPTIMIZEFORTEXTBROWSER=Zjednodušte rozhraní pro nevidomé MAIN_OPTIMIZEFORTEXTBROWSERDesc=Povolte tuto možnost, pokud jste osoba slepá, nebo pokud používáte aplikaci z textového prohlížeče, jako je Lynx nebo Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Tuto hodnotu může každý uživatel přepsat z jeho uživatelské stránky - záložka '%s' DefaultCustomerType=Výchozí typ subjektu pro formulář pro vytvoření nového zákazníka ABankAccountMustBeDefinedOnPaymentModeSetup=Poznámka: Bankovní účet musí být definován v modulu každého platebního režimu (Paypal, Stripe, ...), aby tato funkce fungovala. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Počet řádků, které se mají zobrazit na kartě Protokoly UseDebugBar=Použijte ladicí lištu DEBUGBAR_LOGS_LINES_NUMBER=Počet posledních řádků protokolu, které se mají uchovávat v konzole WarningValueHigherSlowsDramaticalyOutput=Varování, vyšší hodnoty dramaticky zpomalují výstup -DebugBarModuleActivated=Modul debugbar je aktivován a dramaticky zpomaluje rozhraní +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Exportní modely jsou sdílené s každým ExportSetup=Nastavení modulu Export InstanceUniqueID=Jedinečné ID instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=Najdete ho na svém účtu IFTTT EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/cs_CZ/bills.lang b/htdocs/langs/cs_CZ/bills.lang index bea8b4b960a..a490990bb94 100644 --- a/htdocs/langs/cs_CZ/bills.lang +++ b/htdocs/langs/cs_CZ/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Platba vyšší než upomínka k zaplacení HelpPaymentHigherThanReminderToPay=Pozor, částka platby jedné nebo více účtů je vyšší než neuhrazená částka.
Upravte svůj záznam, jinak potvrďte a zvážíte vytvoření poznámky o přebytku, který jste dostali za každou přeplatku faktury. HelpPaymentHigherThanReminderToPaySupplier=Pozor, částka platby jedné nebo více účtů je vyšší než neuhrazená částka.
Upravte svůj záznam, jinak potvrďte a zvážíte vytvoření poznámky o přeplatku za každou přeplatkovou fakturu. ClassifyPaid=Klasifikace 'Zaplaceno' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Klasifikace 'Částečně uhrazeno' ClassifyCanceled=Klasifikace 'Opuštěné' ClassifyClosed=Klasifikace 'Uzavřeno' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Zobrazit opravenou fakturu ShowInvoiceAvoir=Zobrazit dobropis ShowInvoiceDeposit=Zobrazit zálohovou fakturu ShowInvoiceSituation=Zobrazit fakturu situace +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Zobrazit platbu AlreadyPaid=Již zaplacené AlreadyPaidBack=Již vrácené platby diff --git a/htdocs/langs/cs_CZ/errors.lang b/htdocs/langs/cs_CZ/errors.lang index 881d0385adf..bf4f3a14b1c 100644 --- a/htdocs/langs/cs_CZ/errors.lang +++ b/htdocs/langs/cs_CZ/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Speciální znaky nejsou povoleny pro pole "% ErrorNumRefModel=Odkaz obsahuje databázi (%s) a není kompatibilní s tímto pravidlem číslování. Chcete-li tento modul aktivovat, odstraňte záznam nebo přejmenujte odkaz. ErrorQtyTooLowForThisSupplier=Množství příliš nízké pro tohoto prodejce nebo není definovaná cena u tohoto produktu pro tohoto prodejce ErrorOrdersNotCreatedQtyTooLow=Některé objednávky nebyly vytvořeny z příliš malých množství -ErrorModuleSetupNotComplete=Nastavení modulu vypadá jako neúplné. Pokračujte domů - Nastavení - Dokončit moduly. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Chyba na masce ErrorBadMaskFailedToLocatePosOfSequence=Chyba, maska bez pořadového čísla ErrorBadMaskBadRazMonth=Chyba, špatná hodnota po resetu @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=Adresa URL %s musí začínat http: // nebo https: // ErrorNewRefIsAlreadyUsed=Chyba, nový odkaz je již použit ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=Pro tohoto člena bylo nastaveno heslo. Nebyl však vytvořen žádný uživatelský účet. Toto heslo je uloženo, ale nemůže být použito pro přihlášení k Dolibarr. Může být použito externím modulem / rozhraním, ale pokud nemáte pro člena definováno žádné přihlašovací jméno ani heslo, můžete vypnout možnost "Správa přihlášení pro každého člena" z nastavení modulu člena. Pokud potřebujete spravovat přihlašovací údaje, ale nepotřebujete žádné heslo, můžete toto pole ponechat prázdné, abyste se tomuto varování vyhnuli. Poznámka: E-mail může být také použit jako přihlašovací jméno, pokud je člen připojen k uživateli. WarningMandatorySetupNotComplete=Klikněte zde pro nastavení povinných parametrů WarningEnableYourModulesApplications=Kliknutím zde povolíte moduly a aplikace diff --git a/htdocs/langs/cs_CZ/main.lang b/htdocs/langs/cs_CZ/main.lang index a843f00cee0..680091e5929 100644 --- a/htdocs/langs/cs_CZ/main.lang +++ b/htdocs/langs/cs_CZ/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakty/adresy pro tento subjekt AddressesForCompany=Adresy pro tento subjekt ActionsOnCompany=Události pro tento subjekt ActionsOnContact=Události pro tento kontakt / adresu +ActionsOnContract=Events for this contract ActionsOnMember=Akce u tohoto uživatele ActionsOnProduct=Události týkající se tohoto produktu NActionsLate=%s pozdě @@ -759,6 +760,7 @@ LinkToSupplierProposal=Odkaz na návrh dodavatele LinkToSupplierInvoice=Odkaz na fakturu dodavatele LinkToContract=Odkaz na smlouvu LinkToIntervention=Odkaz na intervenci +LinkToTicket=Link to ticket CreateDraft=Vytvořte návrh SetToDraft=Zrušit návrh ClickToEdit=Klepnutím lze upravit diff --git a/htdocs/langs/cs_CZ/products.lang b/htdocs/langs/cs_CZ/products.lang index c5e9bdbb5ec..db9f2e44105 100644 --- a/htdocs/langs/cs_CZ/products.lang +++ b/htdocs/langs/cs_CZ/products.lang @@ -2,6 +2,7 @@ ProductRef=Produkt čj. ProductLabel=Štítek produktu ProductLabelTranslated=Přeložený štítek produktu +ProductDescription=Product description ProductDescriptionTranslated=Přeložený popis produktu ProductNoteTranslated=Přeložená poznámka k produktu ProductServiceCard=Karta produktů/služeb diff --git a/htdocs/langs/cs_CZ/stripe.lang b/htdocs/langs/cs_CZ/stripe.lang index a51be24d80a..845b77bb4ff 100644 --- a/htdocs/langs/cs_CZ/stripe.lang +++ b/htdocs/langs/cs_CZ/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=Uživatelský účet, který se má používat pro e StripePayoutList=Seznam páskových výplat ToOfferALinkForTestWebhook=Odkaz na nastavení Stripe WebHook pro volání IPN (testovací režim) ToOfferALinkForLiveWebhook=Odkaz na nastavení Stripe WebHook pro volání IPN (provozní režim) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/cs_CZ/withdrawals.lang b/htdocs/langs/cs_CZ/withdrawals.lang index ba1a151d65d..27a7297267c 100644 --- a/htdocs/langs/cs_CZ/withdrawals.lang +++ b/htdocs/langs/cs_CZ/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Soubor výběru SetToStatusSent=Nastavte na stav "Odeslaný soubor" ThisWillAlsoAddPaymentOnInvoice=Také budou zaznamenány platby na faktury a budou klasifikovány jako "Placené", pokud zůstane platit, je nulová StatisticsByLineStatus=Statistika podle stavu řádků -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unikátní Mandát Referenční RUMWillBeGenerated=Pokud je prázdná, po uložení informací o bankovním účtu se vytvoří UMR (jedinečný mandátový odkaz). WithdrawMode=Režim přímé inkaso (FRST nebo opakovat) diff --git a/htdocs/langs/da_DK/accountancy.lang b/htdocs/langs/da_DK/accountancy.lang index 3910fb365b7..119531589d3 100644 --- a/htdocs/langs/da_DK/accountancy.lang +++ b/htdocs/langs/da_DK/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Kontokladder AccountingJournal=Kontokladde NewAccountingJournal=Ny kontokladde ShowAccoutingJournal=Vis kontokladde -Nature=Natur +NatureOfJournal=Nature of Journal AccountingJournalType1=Diverse operationer AccountingJournalType2=Salg AccountingJournalType3=Køb @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Eksporter CSV Konfigurerbar Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=ID for kontoplan InitAccountancy=Start regnskab InitAccountancyDesc=Denne side kan bruges til at initialisere en regnskabskonto for varer og ydelser, der ikke har en regnskabskonto defineret til salg og indkøb. DefaultBindingDesc=Denne side kan bruges til at angive en standardkonto, der skal bruges til at forbinde transaktionsoversigt over betaling af lønninger, donationer, afgifter og moms, når der ikke allerede er tilknyttet regnskabskonto. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Indstillinger OptionModeProductSell=Salg OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/da_DK/admin.lang b/htdocs/langs/da_DK/admin.lang index 198a40edff8..5b877d21222 100644 --- a/htdocs/langs/da_DK/admin.lang +++ b/htdocs/langs/da_DK/admin.lang @@ -574,7 +574,7 @@ Module510Name=Løn Module510Desc=Optag og spørg medarbejderbetalinger Module520Name=Loans Module520Desc=Forvaltning af lån -Module600Name=Adviséringer +Module600Name=Notifications on business event Module600Desc=Send e-mail-meddelelser udløst af en forretningsbegivenhed: pr. Bruger (opsætning defineret på hver bruger), pr. Tredjepartskontakter (opsætning defineret på hver tredjepart) eller ved specifikke e-mails Module600Long=Bemærk, at dette modul sender e-mails i realtid, når en bestemt forretningsbegivenhed opstår. Hvis du leder efter en funktion til at sende e-mail påmindelser til dagsordensbegivenheder, skal du gå ind i opsætningen af modulets dagsorden. Module610Name=Produkt Varianter @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Supplerende attributter (ordrer) ExtraFieldsSupplierInvoices=Supplerende attributter (fakturaer) ExtraFieldsProject=Supplerende attributter (projekter) ExtraFieldsProjectTask=Supplerende attributter (opgaver) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribut %s har en forkert værdi. AlphaNumOnlyLowerCharsAndNoSpace=kun alfanumeriske og små bogstaver uden plads SendmailOptionNotComplete=Advarsel til anvendere af sendmail i Linux-system: Hvis nogle modtagere aldrig modtager e-mails, skal du prøve at redigere denne PHP-parameter med mail.force_extra_parameters = -ba i din php.ini-fil. @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Sessionsopbevaring krypteret af Suhosin ConditionIsCurrently=Tilstanden er i øjeblikket %s YouUseBestDriver=Du bruger driver %s, som er den bedste driver, der for øjeblikket er tilgængelig. YouDoNotUseBestDriver=Du bruger driveren %s, men driveren %s anbefales. -NbOfProductIsLowerThanNoPb=Du har kun %s produkter / tjenester i databasen. Dette kræver ikke nogen særlig optimering. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Søg optimering -YouHaveXProductUseSearchOptim=Du har %s produkter i databasen. Du skal tilføje den konstante PRODUCT_DONOTSEARCH_ANYWHERE til 1 i Home-Setup-Other. Begræns søgningen til begyndelsen af ​​strenge, der gør det muligt for databasen at bruge indekser, og du bør få et øjeblikkeligt svar. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Du bruger browseren %s. Denne browser er ok for sikkerhed og ydeevne. BrowserIsKO=Du bruger browseren %s. Denne browser er kendt for at være et dårligt valg for sikkerhed, ydeevne og pålidelighed. Vi anbefaler at bruge Firefox, Chrome, Opera eller Safari. -XDebugInstalled=XDebug er indlæst. -XCacheInstalled=XCache er indlæst. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Vis kunde / sælger ref. info liste (vælg liste eller combobox) og det meste af hyperlink.
Tredjeparter vil blive vist med et navneformat af "CC12345 - SC45678 - The Big Company corp." i stedet for "The Big Company Corp". AddAdressInList=Vis kunde / leverandør adresse info liste (vælg liste eller combobox)
Tredjeparter vil blive vist med et navneformat af "The Big Company Corp. - 21 Jump Street 123456 Big Town - USA" i stedet for "The Big Company Corp". AskForPreferredShippingMethod=Anmod om en foretrukket forsendelsesmetode for tredjeparter. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Opsætning af modul Expense Reports - Regler ExpenseReportNumberingModules=Udgiftsrapporter nummereringsmodul NoModueToManageStockIncrease=Intet modul, der er i stand til at styre automatisk lagerforhøjelse, er blevet aktiveret. Lagerforøgelse vil kun ske ved manuel indlæsning. YouMayFindNotificationsFeaturesIntoModuleNotification=Du kan finde muligheder for e-mail-meddelelser ved at aktivere og konfigurere modulet "Meddelelse". -ListOfNotificationsPerUser=Liste over meddelelser pr. Bruger * -ListOfNotificationsPerUserOrContact=Liste over anmeldelser (begivenheder) tilgængelige pr. Bruger * eller pr. Kontakt ** -ListOfFixedNotifications=Liste over faste meddelelser +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Gå til fanen "Notifikationer" for en bruger for at tilføje eller fjerne underretninger for brugere GoOntoContactCardToAddMore=Gå på fanen "Notifikationer" fra en tredjepart for at tilføje eller fjerne meddelelser for kontakter / adresser Threshold=Grænseværdi @@ -1898,6 +1900,11 @@ OnMobileOnly=Kun på lille skærm (smartphone) DisableProspectCustomerType=Deaktiver "Emner + Kunder" tredjeparts type (så tredjepart skal være Emner eller Kunder, men kan ikke begge) MAIN_OPTIMIZEFORTEXTBROWSER=Forenkle brugergrænsefladen til blindperson MAIN_OPTIMIZEFORTEXTBROWSERDesc=Aktivér denne indstilling, hvis du er blind person, eller hvis du bruger programmet fra en tekstbrowser som Lynx eller Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Denne værdi kan overskrives af hver bruger fra sin brugerside - fanebladet '%s' DefaultCustomerType=Standard tredjepartstype til "Ny kunde" oprettelsesformular ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/da_DK/bills.lang b/htdocs/langs/da_DK/bills.lang index 999c8ee1115..bc5af21cc67 100644 --- a/htdocs/langs/da_DK/bills.lang +++ b/htdocs/langs/da_DK/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Betaling højere end betalingspåmindelse HelpPaymentHigherThanReminderToPay=Vær opmærksom på, at betalingsbeløbet på en eller flere regninger er højere end det udestående beløb, der skal betales.
Rediger din post, ellers bekræft og overvej at oprette en kreditnote for det overskydende beløb, der er modtaget for hver overbetalt faktura. HelpPaymentHigherThanReminderToPaySupplier=Vær opmærksom på, at betalingsbeløbet på en eller flere regninger er højere end det udestående beløb, der skal betales.
Rediger din post, ellers bekræft og overvej at oprette en kreditnota for det overskydende beløb, der betales for hver overbetalt faktura. ClassifyPaid=Klassificer som "Betalt" +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Klassificer som "Delvist betalt" ClassifyCanceled=Klassificer som "Tabt" ClassifyClosed=Klassificer som "Lukket" @@ -214,6 +215,20 @@ ShowInvoiceReplace=Vis erstatning faktura ShowInvoiceAvoir=Vis kreditnota ShowInvoiceDeposit=Vis udbetalt faktura ShowInvoiceSituation=Vis faktura status +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Vis betaling AlreadyPaid=Allerede betalt AlreadyPaidBack=Allerede tilbage betalt diff --git a/htdocs/langs/da_DK/errors.lang b/htdocs/langs/da_DK/errors.lang index 7e5554c1f5b..957b70c5233 100644 --- a/htdocs/langs/da_DK/errors.lang +++ b/htdocs/langs/da_DK/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Specialtegn er ikke tilladt for feltet "%s" ErrorNumRefModel=En henvisning findes i databasen (%s) og er ikke kompatible med denne nummerering regel. Fjern optage eller omdøbt henvisning til aktivere dette modul. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Opsætning af modul ser ud til at være ufuldstændigt. Gå på Home - Setup - Moduler, der skal udfyldes. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Fejl på maske ErrorBadMaskFailedToLocatePosOfSequence=Fejl, maske uden loebenummeret ErrorBadMaskBadRazMonth=Fejl, dårlig reset værdi @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/da_DK/main.lang b/htdocs/langs/da_DK/main.lang index 7ab0a384cb0..b3eaeb11178 100644 --- a/htdocs/langs/da_DK/main.lang +++ b/htdocs/langs/da_DK/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakter/adresser for denne tredjepart AddressesForCompany=Adresse for denne tredjepart ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Begivenheder for denne medlem ActionsOnProduct=Begivenheder omkring dette produkt NActionsLate=%s sent @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link til kontrakt LinkToIntervention=Link til intervention +LinkToTicket=Link to ticket CreateDraft=Opret udkast SetToDraft=Tilbage til udkast ClickToEdit=Klik for at redigere diff --git a/htdocs/langs/da_DK/products.lang b/htdocs/langs/da_DK/products.lang index 1cf45888f60..6f9f8386b6e 100644 --- a/htdocs/langs/da_DK/products.lang +++ b/htdocs/langs/da_DK/products.lang @@ -2,6 +2,7 @@ ProductRef=Produkt ref. ProductLabel=Produktmærke ProductLabelTranslated=Oversat produktmærke +ProductDescription=Product description ProductDescriptionTranslated=Oversat produktbeskrivelse ProductNoteTranslated=Oversat produkt notat ProductServiceCard=Produkter / Tjenester kortet diff --git a/htdocs/langs/da_DK/stripe.lang b/htdocs/langs/da_DK/stripe.lang index 97a9225e981..28e1d39010e 100644 --- a/htdocs/langs/da_DK/stripe.lang +++ b/htdocs/langs/da_DK/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/da_DK/withdrawals.lang b/htdocs/langs/da_DK/withdrawals.lang index ca6c79297aa..70e22a72d5e 100644 --- a/htdocs/langs/da_DK/withdrawals.lang +++ b/htdocs/langs/da_DK/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Udtagelsesfil SetToStatusSent=Sæt til status "Fil sendt" ThisWillAlsoAddPaymentOnInvoice=Dette registrerer også betalinger til fakturaer og klassificerer dem som "Betalt", hvis der fortsat skal betales, er null StatisticsByLineStatus=Statistikker efter status af linjer -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unik Mandat Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direkte debiteringstilstand (FRST eller RECUR) diff --git a/htdocs/langs/de_AT/admin.lang b/htdocs/langs/de_AT/admin.lang index 3b52ead1173..abe6c755eaf 100644 --- a/htdocs/langs/de_AT/admin.lang +++ b/htdocs/langs/de_AT/admin.lang @@ -93,6 +93,5 @@ FreeLegalTextOnInterventions=Freier Rechtstext für Eingriffe WatermarkOnDraftInterventionCards=Wasserzeichen auf Intervention Karte Dokumente (alle, wenn leer) ClickToDialSetup=Click-to-Dial-Moduleinstellungen PathToGeoIPMaxmindCountryDataFile=Pfad zur Datei mit Maxmind IP to Country Übersetzung.
Beispiel: / usr / local / share / GeoIP / GeoIP.dat -ListOfFixedNotifications=List of Fixed Notifications MailToSendShipment=Sendungen MailToSendIntervention=Eingriffe diff --git a/htdocs/langs/de_AT/withdrawals.lang b/htdocs/langs/de_AT/withdrawals.lang index 9f6b518c6e9..1e452c7a2bd 100644 --- a/htdocs/langs/de_AT/withdrawals.lang +++ b/htdocs/langs/de_AT/withdrawals.lang @@ -3,6 +3,5 @@ WithdrawalRefused=Abbuchungen abgelehnt InvoiceRefused=Ablehnung in Rechnung stellen StatusWaiting=Wartestellung StatusMotif2=Abbuchung angefochten -StatusMotif4=Ablehnung durch Kontoinhaber StatusMotif5=Fehlerhafte Kontodaten OrderWaiting=Wartestellung diff --git a/htdocs/langs/de_CH/accountancy.lang b/htdocs/langs/de_CH/accountancy.lang index 7594842ccf6..d5c777f58e2 100644 --- a/htdocs/langs/de_CH/accountancy.lang +++ b/htdocs/langs/de_CH/accountancy.lang @@ -155,7 +155,7 @@ ByAccounts=Nach Konto ByPredefinedAccountGroups=Nach Gruppe ByPersonalizedAccountGroups=Nach eigenen Gruppen NotMatch=Nicht hinterlegt -DeleteMvt=Lösche Darlehenspositionen +DeleteMvt=Hauptbucheinträge löschen DelYear=Zu löschendes Jahr DelJournal=Zu löschendes Journal ConfirmDeleteMvt=Hier kannst du alle Hauptbucheinträge des gewählten Jahres und/oder für einzelne Journale löschen. Gib mindestens eines von beidem an. @@ -169,17 +169,17 @@ ProductAccountNotDefined=Leider ist kein Konto für das Produkt definiert. FeeAccountNotDefined=Leider ist kein Konto für den Betrag definiert. BankAccountNotDefined=Leider ist kein Bankkonto definiert. CustomerInvoicePayment=Kundenzahlung -ThirdPartyAccount=Geschäftspartner +ThirdPartyAccount=Geschäftspartner-Konto NewAccountingMvt=Neue Transaktion NumMvts=Nummer der Transaktion ListeMvts=Liste der Kontobewegungen ErrorDebitCredit=Soll und Haben können nicht beide gleichzeitig einen Wert haben. -ReportThirdParty=Liste der Geschäftspartner -DescThirdPartyReport=Liste der Buchhaltungskonten von Geschäftspartnern und Lieferanten +ReportThirdParty=Liste der Geschäftspartner-Konten +DescThirdPartyReport=Liste der Geschäftpartner (Kunden und Lieferanten) mit deren Buchhaltungskonten ListAccounts=Liste der Buchhaltungskonten UnknownAccountForThirdparty=Den Partner kenne ich nicht - wir nehmen %s. UnknownAccountForThirdpartyBlocking=Den Partner kenne ich nicht. Zugriffsfehler. -ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Geschäftspartner nicht definiert oder unbekannt. Ich nehme deshalb %s. +ThirdpartyAccountNotDefinedOrThirdPartyUnknown=Geschäftspartner-Konto nicht definiert oder Geschäftspartner unbekannt. Wir werden %s verwenden ThirdpartyAccountNotDefinedOrThirdPartyUnknownBlocking=Der Partner ist nicht definiert oder unbekannt. Zugriffsfehler. UnknownAccountForThirdpartyAndWaitingAccountNotDefinedBlocking=Mir fehlt der Partner und das Wartestellungskonto. Zugriffsfehler. PaymentsNotLinkedToProduct=Die Zahlung ist mit keinem Produkt oder Service verknüpft. @@ -243,7 +243,6 @@ ChartofaccountsId=Kontenrahmen ID InitAccountancy=Init Buchhaltung InitAccountancyDesc=Auf dieser Seite weisest du Buchhaltungskonten Produkten und Leistungen zu, die keine Konten für Ein- und Verkäufe hinterlegt haben. DefaultBindingDesc=Auf dieser Seite kannst du ein Standard - Buchhaltungskonto an alle Arten Zahlungstransaktionen zuweisen, falls noch nicht geschehen. -DefaultClosureDesc=Lege hier die Parameter zum Anfügen der Bilanz fest. OptionModeProductSell=Modus Verkauf OptionModeProductSellIntra=Modus Export - Verkäufe in den EWR - Raum OptionModeProductSellExport=Modus Export - Verkäufe in andere Länder diff --git a/htdocs/langs/de_CH/admin.lang b/htdocs/langs/de_CH/admin.lang index d38cb433d55..444a5c87da0 100644 --- a/htdocs/langs/de_CH/admin.lang +++ b/htdocs/langs/de_CH/admin.lang @@ -78,7 +78,7 @@ Purge=Säubern PurgeAreaDesc=Hier können Sie alle vom System erzeugten und gespeicherten Dateien löschen (temporäre Dateien oder alle Dateien im Verzeichnis %s). Diese Funktion ist richtet sich vorwiegend an Benutzer ohne Zugriff auf das Dateisystem des Webservers (z.B. Hostingpakete) PurgeDeleteTemporaryFiles=Lösche alle Temporären Dateien. Dabei gehen keine Arbeitsdaten verloren.\nHinweis: Das funktioniert nur, wenn das Verzeichnis 'Temp' seit 24h da ist. PurgeDeleteTemporaryFilesShort=Temporärdateien löschen -PurgeDeleteAllFilesInDocumentsDir=Alle Datein im Verzeichnis %s löschen. Dies beinhaltet temporäre Dateien ebenso wie Datenbanksicherungen, Dokumente (Geschäftspartner, Rechnungen, ...) und alle Inhalte des ECM-Moduls. +PurgeDeleteAllFilesInDocumentsDir=Alle Dateien im Verzeichnis %s löschen.
Dadurch werden alle generierten Dokumente gelöscht, die sich auf Elemente (Geschäftspartner, Rechnungen usw.), Dateien, die in das ECM-Modul hochgeladen wurden, Datenbank-Backup-Dumps und temporäre Dateien beziehen. PurgeNDirectoriesDeleted=%s Dateien oder Verzeichnisse gelöscht. PurgeNDirectoriesFailed=Löschen von %s Dateien oder Verzeichnisse fehlgeschlagen. PurgeAuditEvents=Bereinige alle Sicherheitsereignisse @@ -398,6 +398,7 @@ Permission1237=Lieferantenbestellungen mit Details exportieren Permission1421=Kundenaufträge mit Attributen exportieren Permission2414=Aktionen und Aufgaben anderer exportieren Permission59002=Gewinspanne definieren +DictionaryCompanyType=Geschäftspartner Typen DictionaryCompanyJuridicalType=Rechtsformen von Unternehmen DictionaryActions=Arten von Kalenderereignissen DictionaryVAT=MwSt.-Sätze @@ -413,6 +414,7 @@ DriverType=Treiber Typ MenuCompanySetup=Firma / Organisation MessageOfDay=Nachricht des Tages CompanyInfo=Firma / Organisation +CompanyZip=PLZ SetupDescription1=Der Setupbereich erlaubt das konfigurieren ihrer Dolibarr Installation vor der ersten Verwendung. SetupDescription4=Die Parameter im Menü %s-> %s sind notwenig, da Dolibarr ein modulares monolithisches ERP/CRM-System ist. Neue Funktionen werden für jedes aktivierte Modul zum Menü hinzugefügt. InfoDolibarr=Infos Dolibarr @@ -507,7 +509,6 @@ ExpenseReportsIkSetup=Modul Spesenabrechnungen (Milles Index) einrichten ExpenseReportsRulesSetup=Modul Spesenabrechnungen (Regeln) einrichten ExpenseReportNumberingModules=Modul Spesenabrechnung (Numerierung) YouMayFindNotificationsFeaturesIntoModuleNotification=Du kannst automatische Benachrichtigungen im Modul "Benachrichtigungen" festlegen und verwalten. -ListOfFixedNotifications=List of Fixed Notifications ConfFileMustContainCustom=Zur Installation eines externen Modules speichern Sie die Modul-Dateien in Verzeichnis %s. Damit Dolibarr dieses Verzeichniss verwendet, musst du in der Setupdatei conf.php die Optionen
$dolibarr_main_url_root_alt auf
$dolibarr_main_url_root_alt="/custom" oder
'%s/custom'; hinzufügen oder anpassen. LinkColor=Linkfarbe MinimumNoticePeriod=Kündigungsfrist (Ihre Kündigung muss vor dieser Zeit erfolgen) diff --git a/htdocs/langs/de_CH/bills.lang b/htdocs/langs/de_CH/bills.lang index f4deb2d45a1..d118ff710bf 100644 --- a/htdocs/langs/de_CH/bills.lang +++ b/htdocs/langs/de_CH/bills.lang @@ -44,7 +44,9 @@ SendReminderBillRef=Einreichung von Rechnung %s (Erinnerung) NoOtherDraftBills=Keine Rechnungsentwürfe Anderer RelatedRecurringCustomerInvoices=Verknüpfte wiederkehrende Kundenrechnung Reduction=Ermässigung +ReductionShort=% Reductions=Ermässigungen +ReductionsShort=% AddRelativeDiscount=Jeweiligen Rabatt erstellen EditRelativeDiscount=Relativen Rabatt bearbeiten AddGlobalDiscount=Rabattregel hinzufügen @@ -73,7 +75,7 @@ RegulatedOn=Gebucht am ChequeBank=Scheckbank PrettyLittleSentence=Nehmen Sie die Höhe der Zahlungen, die aufgrund von Schecks, die in meinem Namen als Mitglied eines Accounting Association, die von der Steuerverwaltung. VATIsNotUsedForInvoice=* Nicht für MwSt-art-CGI-293B -NoteListOfYourUnpaidInvoices=Bitte beachten: Diese Liste enthält nur Rechnungen an Geschäftspartner, bei denen Sie als Vertreter angegeben sind. +NoteListOfYourUnpaidInvoices=Bitte beachten: Diese Liste enthält nur Rechnungen für Geschäftspartner, bei denen Sie als Vertreter angegeben sind. YouMustCreateStandardInvoiceFirstDesc=Sie müssen zuerst eine Standardrechnung Erstellen und diese dann in eine Rechnungsvorlage umwandeln InvoiceFirstSituationAsk=Erste Situation Rechnung InvoiceSituation=Situation Rechnung diff --git a/htdocs/langs/de_CH/companies.lang b/htdocs/langs/de_CH/companies.lang index bbfe4ef8af3..e086658ba2c 100644 --- a/htdocs/langs/de_CH/companies.lang +++ b/htdocs/langs/de_CH/companies.lang @@ -5,10 +5,10 @@ ConfirmDeleteCompany=Willst du diesen Geschäftspartner und alle damit verbunden ConfirmDeleteContact=Willst du diesen Kontakt und alle damit verbundenen Informationen wirklich löschen? MenuNewThirdParty=Erzeuge Geschäftspartner MenuNewCustomer=Erzeuge Kunde -MenuNewSupplier=Erzeuge Lieferant -NewCompany=Erzeuge Unternehmen (Lead / Kunde / Lieferant) +MenuNewSupplier=Neuer Lieferant +NewCompany=Erzeuge Partner (Lead / Kunde / Lieferant) NewThirdParty=Erzeuge Geschäftspartner (Lead / Kunde / Lieferant) -CreateDolibarrThirdPartySupplier=Erzeuge Lieferant +CreateDolibarrThirdPartySupplier=Erstelle einen Lieferant CreateThirdPartyOnly=Geschäftspartner erstellen CreateThirdPartyAndContact=Erzeuge Geschäftspartner mit Kontakt IdThirdParty=Geschäftspartner ID @@ -122,7 +122,7 @@ SupplierCodeDesc=Lieferantennummer, eindeutig für jeden Lieferanten RequiredIfCustomer=Erforderlich falls Geschäftspartner Kunde oder Interessent ist RequiredIfSupplier=Erforderlich, wenn der Partner Lieferant ist ValidityControledByModule=Durch Modul validiert -ListOfThirdParties=Geschäftspartner +ListOfThirdParties=Liste der Geschäftspartner ShowCompany=Geschäftspartner anzeigen ShowContact=Zeige Kontaktangaben ContactsAllShort=Alle (Kein Filter) @@ -165,8 +165,6 @@ AllocateCommercial=Vertriebsmitarbeiter zuweisen FiscalMonthStart=Ab Monat des Geschäftsjahres YouMustAssignUserMailFirst=Für E-Mail - Benachrichtigung hinterlegst du bitte zuerst eine E-Mail Adresse im Benutzerprofil. YouMustCreateContactFirst=Sie müssen erst E-Mail-Kontakte beim Geschäftspartner anlegen, um E-Mail-Benachrichtigungen hinzufügen zu können. -ListSuppliersShort=Liste Lieferanten -ListProspectsShort=Liste Interessenten ListCustomersShort=Kundenliste LastModifiedThirdParties=Die letzten %s bearbeiteten Partner UniqueThirdParties=Anzahl Geschäftspartner diff --git a/htdocs/langs/de_CH/compta.lang b/htdocs/langs/de_CH/compta.lang index 2adacb7ff44..eecf64ff1d5 100644 --- a/htdocs/langs/de_CH/compta.lang +++ b/htdocs/langs/de_CH/compta.lang @@ -1,6 +1,6 @@ # Dolibarr language file - Source file is en_US - compta FeatureIsSupportedInInOutModeOnly=Dieses Feautre ist nur in der Soll-Haben-Option verfügbar (siehe Konfiguration des Rechnungswesen-Moduls) -PaymentsNotLinkedToInvoice=Zahlungen mit keiner Rechnung und damit auch keinem Geschäftspartner verbunden +PaymentsNotLinkedToInvoice=Zahlungen mit keiner Rechnung und damit auch mit keinem Geschäftspartner verbunden Balance=Bilanz LT2SummaryES=EKSt. Übersicht VATCollected=Erhobene MwSt. diff --git a/htdocs/langs/de_CH/errors.lang b/htdocs/langs/de_CH/errors.lang index a4be143308a..6faba9c6f97 100644 --- a/htdocs/langs/de_CH/errors.lang +++ b/htdocs/langs/de_CH/errors.lang @@ -24,7 +24,6 @@ ErrorFieldCanNotContainSpecialNorUpperCharacters=Das Feld %s darf keine S ErrorFieldMustHaveXChar=Das Feld %s muss mindestens %s Zeichen haben. ErrorCantSaveADoneUserWithZeroPercentage=Ereignisse können nicht mit Status "Nicht begonnen" gespeichert werden, wenn das Feld "Erledigt durch" schon ausgefüllt ist. ErrorPleaseTypeBankTransactionReportName=Gib hier den Bankkontoauszug im Format YYYYMM oder YYYYMMDD an, in den du diesen Eintrag eintragen willst. -ErrorModuleSetupNotComplete=Das Setup des Moduls scheint unvollständig zu sein. Führen Sie nochmal das Setup aus um das Modul zu vervollständigen. ErrorProdIdAlreadyExist=%s wurde bereits einem Geschäftspartner zugewiesen ErrorForbidden3=Es scheint keine ordnungsgemässe Authentifizierung für das System vorzuliegen. Bitte werfen Sie einen Blick auf die Systemdokumentation um die entsprechenden Authentifizierungsoptionen zu verwalten (htaccess, mod_auth oder andere...) ErrorBadValueForCode=Unzulässiger Code-Wert. Versuchen Sie es mit einem anderen Wert erneut... diff --git a/htdocs/langs/de_CH/main.lang b/htdocs/langs/de_CH/main.lang index cbe2c53512c..56b47cf155c 100644 --- a/htdocs/langs/de_CH/main.lang +++ b/htdocs/langs/de_CH/main.lang @@ -52,6 +52,7 @@ ErrorCantLoadUserFromDolibarrDatabase=Kann Benutzer %s nicht aus der Syst ErrorNoSocialContributionForSellerCountry=Fehler, keine Definition für Sozialabgaben/Steuerwerte definiert für Land '%s'. ErrorCannotAddThisParentWarehouse=Du kannst dieses Lager nicht bei sich selbst einordnen... MaxNbOfRecordPerPage=Einträge pro Seite +SeeHere=Schau, hier: FileRenamed=Datei erfolgreich umbenannt FileGenerated=Datei erfolgreich erzeugt FileSaved=Datei erfolgreich gespeichert @@ -340,5 +341,3 @@ NoFilesUploadedYet=Bitte lade zuerst ein Dokument hoch. SeePrivateNote=Privatnotiz Einblenden PaymentInformation=Zahlungsinformationen ValidFrom=Gültig von -ValidUntil=Gültig bis -NoRecordedUsers=Keine Benutzer diff --git a/htdocs/langs/de_CH/members.lang b/htdocs/langs/de_CH/members.lang index 27d4cf7781a..f14c57540cc 100644 --- a/htdocs/langs/de_CH/members.lang +++ b/htdocs/langs/de_CH/members.lang @@ -23,6 +23,7 @@ NewSubscriptionDesc=Mit diesem Formular können Sie Ihr Abonnement als neues Mit Subscriptions=Abonnemente ListOfSubscriptions=Liste der Abonnemente NewMemberType=Neue Mitgliederart +WelcomeEMail=Begrüssungs-E-Mail SubscriptionRequired=Abonnement notwendig VoteAllowed=Abstimmen erlaubt ShowSubscription=Abonnement anzeigen @@ -44,4 +45,6 @@ MembersStatisticsByState=Mitgliederstatistik nach Kanton MembersStatisticsByTown=Mitgliederstatistik nach Ort NoValidatedMemberYet=Keine verifizierten Mitglieder gefunden LatestSubscriptionDate=Enddatum des Abonnementes +MemberNature=Art des Mitglieds Public=Informationen sind öffentlich +NewMemberbyWeb=Neues Mitglied hinzugefügt. Warten auf Genehmigung diff --git a/htdocs/langs/de_CH/supplier_proposal.lang b/htdocs/langs/de_CH/supplier_proposal.lang index 5a7c27d79e2..f1b50555dd7 100644 --- a/htdocs/langs/de_CH/supplier_proposal.lang +++ b/htdocs/langs/de_CH/supplier_proposal.lang @@ -1,24 +1,40 @@ # Dolibarr language file - Source file is en_US - supplier_proposal -supplier_proposalDESC=Preisanfragen Lieferant verwalten +SupplierProposal=Lieferantenofferten +supplier_proposalDESC=Preisanfragen an Lieferanten verwalten SupplierProposalNew=Neue Preisanfrage CommRequest=Generelle Preisanfrage CommRequests=Generelle Preisanfragen SearchRequest=Anfragen finden DraftRequests=Entwürfe Preisanfragen +SupplierProposalsDraft=Lieferanten - Richtofferten +LastModifiedRequests=Die letzten %s geänderten Offertanfragen RequestsOpened=Offene Preisanfragen +SupplierProposalArea=Lieferantenangebote +SupplierProposalShort=Lieferantenangebote NewAskPrice=Neue Preisanfrage ShowSupplierProposal=Preisanfrage zeigen +SupplierProposalRefFourn=Lieferantennummer SupplierProposalRefFournNotice=Bevor die Preisanfrage mit "Angenommen" abgeschlossen wird, sollten Referenzen zum Lieferant eingeholt werden. +ConfirmValidateAsk=Willst du diese Offertanfrage unter dem Namen %s bestätigen? ValidateAsk=Anfrage bestätigen SupplierProposalStatusDraft=Entwürfe (benötigen Bestätigung) SupplierProposalStatusSigned=Akzeptiert +SupplierProposalStatusValidatedShort=Bestätigt SupplierProposalStatusSignedShort=Akzeptiert CopyAskFrom=Neue Preisanfrage erstellen (Kopie einer bestehenden Anfrage) CreateEmptyAsk=Leere Anfrage erstellen +ConfirmCloneAsk=Willst du die Offertanfrage %s duplizieren? +ConfirmReOpenAsk=Willst du diese Preisanfrage %s wiedereröffnen? SendAskByMail=Preisanfrage mit E-Mail versenden SendAskRef=Preisanfrage %s versenden SupplierProposalCard=Anfragekarte +ConfirmDeleteAsk=Willst du diese Preisanfrage %s löschen? DocModelAuroreDescription=Eine vollständige Preisanfrage-Vorlage (Logo...) DefaultModelSupplierProposalCreate=Standardvorlage erstellen DefaultModelSupplierProposalToBill=Standardvorlage beim Abschluss einer Preisanfrage (angenommen) DefaultModelSupplierProposalClosed=Standardvorlage beim Abschluss einer Preisanfrage (zurückgewiesen) +ListOfSupplierProposals=Liste der Offertanfragen an Lieferanten +ListSupplierProposalsAssociatedProject=Liste der Lieferantenofferten, die mit diesem Projekt verknüpft sind +SupplierProposalsToClose=Zu schliessende Lieferantenangebote +SupplierProposalsToProcess=Zu verarbeitende Lieferantenofferten +LastSupplierProposals=Die letzten %s Offertanfragen diff --git a/htdocs/langs/de_CH/ticket.lang b/htdocs/langs/de_CH/ticket.lang index 93e412de5eb..9a55f674e15 100644 --- a/htdocs/langs/de_CH/ticket.lang +++ b/htdocs/langs/de_CH/ticket.lang @@ -1,4 +1,5 @@ # Dolibarr language file - Source file is en_US - ticket +TypeContact_ticket_external_SUPPORTCLI=Kundenkontakt / Störfallverfolgung NotRead=Ungelesen InProgress=In Bearbeitung Category=Analysecode diff --git a/htdocs/langs/de_CH/users.lang b/htdocs/langs/de_CH/users.lang index ab3eb40ac4c..22967220db0 100644 --- a/htdocs/langs/de_CH/users.lang +++ b/htdocs/langs/de_CH/users.lang @@ -23,8 +23,8 @@ ExportDataset_user_1=Benutzer und Eigenschaften CreateInternalUserDesc=Hier kannst du interne Benutzer erzeugen.\nExterne Benutzer erzeugst du in den Kontakten deiner Partner. InternalExternalDesc=Ein interner Benutzer gehört zu deiner Firma.\nExterne User sind Partner, die Zugriff auf das System erhalten.\nSo oder wird die Reichweite mit Benutzerberechtigungen gesteuert. Man kann internen und externen Benutzern auch verschiedene Ansichten und Menus zuweisen. PermissionInheritedFromAGroup=Berechtigung durch eine Gruppenzugehörigkeit gererbt. -UserWillBeInternalUser=Erstellter Benutzer ist intern (mit keinem bestimmten Geschäftspartner verknüpft) -UserWillBeExternalUser=Erstellter Benutzer ist extern (mit einem bestimmten Geschäftspartner verknüpft) +UserWillBeInternalUser=Erstellter Benutzer ist ein intern Benutzer (da mit keinem bestimmten Geschäftspartner verknüpft) +UserWillBeExternalUser=Erstellter Benutzer ist ein externer Benutzer (da mit einem bestimmten Geschäftspartner verknüpft) ConfirmCreateContact=Willst du wirklich ein Benutzerkonto für diesen Kontakt erstellen? ConfirmCreateLogin=Willst du wirklich ein Benutzerkonto für dieses Mitglied erstellen? ConfirmCreateThirdParty=Willst du wirklich für dieses Mitglied einen Partner erzeugen? diff --git a/htdocs/langs/de_CH/withdrawals.lang b/htdocs/langs/de_CH/withdrawals.lang index 707c89ca841..de458cca1cc 100644 --- a/htdocs/langs/de_CH/withdrawals.lang +++ b/htdocs/langs/de_CH/withdrawals.lang @@ -1,3 +1,2 @@ # Dolibarr language file - Source file is en_US - withdrawals -ThirdPartyBankCode=BLZ Geschäftspartner WithdrawalRefusedConfirm=Möchten Sie wirklich eine Abbuchungsablehnung zu diesem Geschäftspartner erstellen? diff --git a/htdocs/langs/de_DE/accountancy.lang b/htdocs/langs/de_DE/accountancy.lang index 36aaddcf541..0ca2eb50e9a 100644 --- a/htdocs/langs/de_DE/accountancy.lang +++ b/htdocs/langs/de_DE/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Buchhaltungsjournale AccountingJournal=Buchhaltungsjournal NewAccountingJournal=Neues Buchhaltungsjournal ShowAccoutingJournal=Buchhaltungsjournal anzeigen -Nature=Art +NatureOfJournal=Nature of Journal AccountingJournalType1=Verschiedene Aktionen AccountingJournalType2=Verkauf AccountingJournalType3=Einkauf @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Konfigurierbarer CSV Export Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Kontenplan ID InitAccountancy=Rechnungswesen initialisieren InitAccountancyDesc=Auf dieser Seite kann ein Sachkonto für Artikel und Dienstleistungen vorgegeben werden, wenn noch kein Buchhaltungs-Konto für Ein- und Verkäufe definiert ist. DefaultBindingDesc=Diese Seite kann verwendet werden, um ein Standardkonto festzulegen, das für die Verknüpfung von Transaktionsdatensätzen zu Lohnzahlungen, Spenden, Steuern und Mwst. verwendet werden soll, wenn kein bestimmtes Konto angegeben wurde. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Optionen OptionModeProductSell=Modus Verkäufe Inland OptionModeProductSellIntra=Modus Verkäufe in EU/EWG diff --git a/htdocs/langs/de_DE/admin.lang b/htdocs/langs/de_DE/admin.lang index c3449107abb..d6292945470 100644 --- a/htdocs/langs/de_DE/admin.lang +++ b/htdocs/langs/de_DE/admin.lang @@ -574,7 +574,7 @@ Module510Name=Löhne Module510Desc=Erfassen und Verfolgen von Mitarbeiterzahlungen Module520Name=Kredite / Darlehen Module520Desc=Verwaltung von Darlehen -Module600Name=Benachrichtigungen +Module600Name=Notifications on business event Module600Desc=E-Mail-Benachrichtigungen senden, die durch ein Geschäftsereignis ausgelöst werden: pro Benutzer (Einrichtung definiert für jeden Benutzer), pro Drittanbieter-Kontakte (Einrichtung definiert für jeden Drittanbieter) oder durch bestimmte E-Mails. Module600Long=Beachten Sie, dass dieses Modul E-Mails in Echtzeit sendet, wenn ein bestimmtes Geschäftsereignis stattfindet. Wenn Sie nach einer Funktion zum Senden von e-Mail-Erinnerungen für Agenda-Ereignisse suchen, gehen Sie in die Einrichtung den dem Modul Agenda. Module610Name=Produktvarianten @@ -807,7 +807,7 @@ Permission401=Rabatte anzeigen Permission402=Rabatte erstellen/bearbeiten Permission403=Rabatte freigeben Permission404=Rabatte löschen -Permission430=Use Debug Bar +Permission430=Debug Bar nutzen Permission511=Read payments of salaries Permission512=Lohnzahlungen anlegen / ändern Permission514=Delete payments of salaries @@ -886,10 +886,10 @@ Permission2515=Dokumentverzeichnisse verwalten Permission2801=FTP-Client im Lesemodus nutzen (nur ansehen und herunterladen) Permission2802=FTP-Client im Schreibmodus nutzen (Dateien löschen oder hochladen) Permission3200=Read archived events and fingerprints -Permission4001=See employees -Permission4002=Create employees -Permission4003=Delete employees -Permission4004=Export employees +Permission4001=Mitarbeiter anzeigen +Permission4002=Mitarbeiter erstellen +Permission4003=Mitarbeiter löschen +Permission4004=Mitarbeiter exportieren Permission10001=Read website content Permission10002=Create/modify website content (html and javascript content) Permission10003=Create/modify website content (dynamic php code). Dangerous, must be reserved to restricted developers. @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Ergänzende Attribute (Bestellungen) ExtraFieldsSupplierInvoices=Ergänzende Attribute (Rechnungen) ExtraFieldsProject=Ergänzende Attribute (Projekte) ExtraFieldsProjectTask=Ergänzende Attribute (Aufgaben) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribut %s hat einen falschen Wert. AlphaNumOnlyLowerCharsAndNoSpace=nur Kleinbuchstaben und Zahlen, keine Leerzeichen SendmailOptionNotComplete=Achtung: Auf einigen Linux-Systemen muss die Einrichtung von sendmail die Option -ba ethalten, um E-Mail versenden zu können (Parameter mail.force_extra_parameters in der php.ini-Datei). Wenn einige Empfänger niemals E-Mails erhalten, verändern Sie den PHP Parameter folgendermaßen mail.force_extra_parameters =-ba. @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Sitzungsspeicher durch Suhosin verschlüsselt ConditionIsCurrently=Einstellung ist aktuell %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=Sie verwenden Treiber %s, aber es wird der Treiber %s empfohlen. -NbOfProductIsLowerThanNoPb=Sie haben nur %s Produkte/Leistungen in der Datenbank. Daher ist keine Optimierung erforderlich. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Such Optimierung -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Sie verwenden %s als Webbrowser. Dieser ist hinsichtlich Sicherheit und Leistung ausreichend. BrowserIsKO=Sie verwenden %s als Webbrowser. Dieser ist bekanntlich eine schlechte Wahl wenn es um Sicherheit, Leistung und Zuverlässigkeit geht. Wir empfehlen Firefox, Chrome, Opera oder Safari zu benutzen. -XDebugInstalled=XDebug installiert. -XCacheInstalled=XCache installiert. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Einrichtung vom Modul Spesenabrechnungen - Regeln ExpenseReportNumberingModules=Modul zur Nummerierung von Spesenabrechnungen NoModueToManageStockIncrease=Kein Modul zur automatische Bestandserhöhung ist aktiviert. Lager Bestandserhöhung kann nur durch manuelle Eingabe erfolgen. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=Liste der Benachrichtigungen nach Benutzer* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=Liste von ausbesserten Benachrichtigungen +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Gehen Sie auf die Registerkarte "Hinweise" eines Benutzers, um Benachrichtigungen für Benutzer zu erstellen/entfernen GoOntoContactCardToAddMore=Gehen Sie auf die Registerkarte "Hinweise" des Partners, um Hinweise für Kontakte/Adressen zu erstellen oder zu entfernen Threshold=Schwellenwert @@ -1898,6 +1900,11 @@ OnMobileOnly=Nur auf kleinen Bildschirmen (Smartphones) DisableProspectCustomerType=Deaktivieren Sie den Drittanbietertyp "Interessent + Kunde" (d.h. ein Drittanbieter muss ein Interessent oder Kunde sein, kann aber nicht beides sein). MAIN_OPTIMIZEFORTEXTBROWSER=Vereinfachte Benutzeroberfläche für Blinde MAIN_OPTIMIZEFORTEXTBROWSERDesc=Aktivieren Sie diese Option, wenn Sie eine blinde Person sind, oder wenn Sie die Anwendung über einen Textbrowser wie Lynx oder Links verwenden. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Dieser Wert kann von jedem Benutzer auf seiner Benutzerseite überschrieben werden - Registerkarte '%s' DefaultCustomerType=Standardmäßiger Drittanbietertyp für die Maske "Neuer Kunde". ABankAccountMustBeDefinedOnPaymentModeSetup=Hinweis: Das Bankkonto muss im Modul jeder Zahlungsart (Paypal, Stripe,...) definiert sein, damit diese Funktion funktioniert. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Zahl der Zeilen, die auf der Registerkarte Logs angezeigt werden UseDebugBar=Verwenden Sie die Debug Leiste DEBUGBAR_LOGS_LINES_NUMBER=Zahl der letzten Protokollzeilen, die in der Konsole verbleiben sollen WarningValueHigherSlowsDramaticalyOutput=Warnung, höhere Werte verlangsamen die Ausgabe erheblich. -DebugBarModuleActivated=Modul Debugbar ist aktiviert und verlangsamt die Oberfläche erheblich. +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Exportmodelle sind für jeden zugänglich. ExportSetup=Einrichtung Modul Export InstanceUniqueID=Eindeutige ID dieser Instanz @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=Sie finden es auf Ihrem IFTTTT-Konto. EndPointFor=Endpunkt für %s:%s DeleteEmailCollector=Lösche eMail-Collector ConfirmDeleteEmailCollector=Sind Sie sicher, dass Sie diesen eMail-Collector löschen wollen? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/de_DE/bills.lang b/htdocs/langs/de_DE/bills.lang index a5809f83189..98004cb5c15 100644 --- a/htdocs/langs/de_DE/bills.lang +++ b/htdocs/langs/de_DE/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Zahlungsbetrag übersteigt Zahlungserinnerung HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Als 'bezahlt' markieren +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Als 'teilweise bezahlt' markieren ClassifyCanceled=Rechnung 'aufgegeben' ClassifyClosed=Als 'geschlossen' markieren @@ -214,6 +215,20 @@ ShowInvoiceReplace=Zeige Ersatzrechnung ShowInvoiceAvoir=Zeige Gutschrift ShowInvoiceDeposit=Anzahlungsrechnungen anzeigen ShowInvoiceSituation=Zeige Fortschritt-Rechnung +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Zeige Zahlung AlreadyPaid=Bereits bezahlt AlreadyPaidBack=Bereits zurückbezahlt diff --git a/htdocs/langs/de_DE/boxes.lang b/htdocs/langs/de_DE/boxes.lang index fe434f7a49c..95c806cc442 100644 --- a/htdocs/langs/de_DE/boxes.lang +++ b/htdocs/langs/de_DE/boxes.lang @@ -6,13 +6,13 @@ BoxProductsAlertStock=Bestandeswarnungen für Produkte BoxLastProductsInContract=Zuletzt in Verträgen aufgenomme Produkte/Leistungen (maximal %s) BoxLastSupplierBills=neueste Lieferantenrechnungen BoxLastCustomerBills=neueste Kundenrechnungen -BoxOldestUnpaidCustomerBills=Älteste unbezahlte Kundenrechnungen +BoxOldestUnpaidCustomerBills=älteste unbezahlte Kundenrechnungen BoxOldestUnpaidSupplierBills=älteste unbezahlte Lieferantenrechnungen BoxLastProposals=neueste Angebote BoxLastProspects=Zuletzt bearbeitete Interessenten BoxLastCustomers=zuletzt berarbeitete Kunden -BoxLastSuppliers=Zuletzt bearbeitete Lieferanten -BoxLastCustomerOrders=Neueste Lieferantenbestellungen +BoxLastSuppliers=zuletzt bearbeitete Lieferanten +BoxLastCustomerOrders=neueste Lieferantenbestellungen BoxLastActions=Neuste Aktionen BoxLastContracts=Neueste Verträge BoxLastContacts=Neueste Kontakte/Adressen @@ -32,7 +32,7 @@ BoxTitleLastModifiedProspects=neueste geänderte %s Interessenten BoxTitleLastModifiedMembers=%s neueste Mitglieder BoxTitleLastFicheInter=Zuletzt bearbeitete Serviceaufträge (maximal %s) BoxTitleOldestUnpaidCustomerBills=Älteste offene Kundenrechnungen (maximal %s) -BoxTitleOldestUnpaidSupplierBills=Älteste offene Kundenrechnungen (maximal %s) +BoxTitleOldestUnpaidSupplierBills=älteste offene Lieferantenrechnungen (maximal %s) BoxTitleCurrentAccounts=Salden offene Konten BoxTitleLastModifiedContacts=Zuletzt bearbeitete Kontakte/Adressen (maximal %s) BoxMyLastBookmarks=Meine %s neuesten Lesezeichen diff --git a/htdocs/langs/de_DE/errors.lang b/htdocs/langs/de_DE/errors.lang index fc26047b0bf..5e5328d3898 100644 --- a/htdocs/langs/de_DE/errors.lang +++ b/htdocs/langs/de_DE/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Sonderzeichen sind im Feld '%s' nicht erlaubt ErrorNumRefModel=Es besteht ein Bezug zur Datenbank (%s) der mit dieser Numerierungsfolge nicht kompatibel ist. Entfernen Sie den Eintrag oder benennen Sie den Verweis um, um dieses Modul zu aktivieren. ErrorQtyTooLowForThisSupplier=Menge zu niedrig für diesen Lieferanten oder kein für dieses Produkt definierter Preis für diesen Lieferanten ErrorOrdersNotCreatedQtyTooLow=Einige Bestellungen wurden aufgrund zu geringer Mengen nicht erstellt -ErrorModuleSetupNotComplete=Das Setup des Moduls ist unvollständig. Gehen Sie zu Home - Einstellungen - Module um die Einstellungen zu vervollständigen. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Fehler auf der Maske ErrorBadMaskFailedToLocatePosOfSequence=Fehler, Maske ohne fortlaufende Nummer ErrorBadMaskBadRazMonth=Fehler, falscher Reset-Wert @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=Die URL %s muss mit http: // oder https: // beginnen. ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=Es wurde ein Passwort für dieses Mitglied vergeben, aber kein Benutzer erstellt. Das Passwort wird gespeichert, aber kann nicht für die Anmeldung an Dolibarr verwendet werden. Es kann von einem externen Modul/einer Schnittstelle verwendet werden, aber wenn Sie kein Login oder Passwort für dieses Mitglied definiert müssen, können Sie die Option "Login für jedes Mitglied verwalten" in den Mitgliedseinstellungen deaktivieren. Wenn Sie ein Login aber kein Passwort benötige, lassen Sie dieses Feld leer, um diese Meldung zu deaktivieren. Anmerkung: Die E-Mail-Adresse kann auch zur Anmeldung verwendet werden, wenn das Mitglied mit einem Benutzer verbunden wird. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/de_DE/main.lang b/htdocs/langs/de_DE/main.lang index 68d80ba1add..ae6ad4131a0 100644 --- a/htdocs/langs/de_DE/main.lang +++ b/htdocs/langs/de_DE/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Ansprechpartner / Adressen zu diesem Partner AddressesForCompany=Anschriften zu diesem Partner ActionsOnCompany=Aktionen für diesen Partner ActionsOnContact=Aktionen für diesen Kontakt +ActionsOnContract=Events for this contract ActionsOnMember=Aktionen zu diesem Mitglied ActionsOnProduct=Ereignisse zu diesem Produkt NActionsLate=%s verspätet @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link zum Lieferantenangebot LinkToSupplierInvoice=Link zur Lieferantenrechnung LinkToContract=Link zum Vertrag LinkToIntervention=Link zu Arbeitseinsatz +LinkToTicket=Link to ticket CreateDraft=Entwurf erstellen SetToDraft=Auf Entwurf zurücksetzen ClickToEdit=Klicken zum Bearbeiten @@ -973,9 +975,9 @@ Inventory=Inventur AnalyticCode=Analyse-Code TMenuMRP=Stücklisten ShowMoreInfos=Show More Infos -NoFilesUploadedYet=Please upload a document first +NoFilesUploadedYet=Bitte zuerst ein Dokument hochladen SeePrivateNote=See private note -PaymentInformation=Payment information -ValidFrom=Valid from -ValidUntil=Valid until -NoRecordedUsers=No users +PaymentInformation=Zahlungsdaten +ValidFrom=Gültig ab +ValidUntil=Gültig bis +NoRecordedUsers=Keine Benutzer diff --git a/htdocs/langs/de_DE/products.lang b/htdocs/langs/de_DE/products.lang index 8270e25fd2f..c21d97aeafe 100644 --- a/htdocs/langs/de_DE/products.lang +++ b/htdocs/langs/de_DE/products.lang @@ -2,6 +2,7 @@ ProductRef=Produkt-Nr. ProductLabel=Produktbezeichnung ProductLabelTranslated=Übersetzte Produktbezeichnung +ProductDescription=Product description ProductDescriptionTranslated=Übersetzte Produktbeschreibung ProductNoteTranslated=Übersetzte Produkt Notiz ProductServiceCard=Produkte/Leistungen Karte diff --git a/htdocs/langs/de_DE/stripe.lang b/htdocs/langs/de_DE/stripe.lang index ad2684355a3..ee8d6fc4167 100644 --- a/htdocs/langs/de_DE/stripe.lang +++ b/htdocs/langs/de_DE/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/de_DE/withdrawals.lang b/htdocs/langs/de_DE/withdrawals.lang index c93f95ed408..361f01de3e6 100644 --- a/htdocs/langs/de_DE/withdrawals.lang +++ b/htdocs/langs/de_DE/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Datei abbuchen SetToStatusSent=Setze in Status "Datei versandt" ThisWillAlsoAddPaymentOnInvoice=Hierdurch werden auch Zahlungen auf Rechnungen erfasst und als "Bezahlt" klassifiziert, wenn der Restbetrag null ist StatisticsByLineStatus=Statistiken nach Statuszeilen -RUM=Mandatsreferenz +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Eindeutige Mandatsreferenz RUMWillBeGenerated=Wenn leer, wird die Mandatsreferenz generiert, sobald die Bankkontodaten gespeichert sind WithdrawMode=Lastschriftmodus (FRST oder RECUR) diff --git a/htdocs/langs/el_GR/accountancy.lang b/htdocs/langs/el_GR/accountancy.lang index c14fa13dcc9..47e353b87a3 100644 --- a/htdocs/langs/el_GR/accountancy.lang +++ b/htdocs/langs/el_GR/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Πωλήσεις AccountingJournalType3=Αγορές @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Επιλογές OptionModeProductSell=Κατάσταση πωλήσεων OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/el_GR/admin.lang b/htdocs/langs/el_GR/admin.lang index 8a86a6f41c5..ba4fa37adc8 100644 --- a/htdocs/langs/el_GR/admin.lang +++ b/htdocs/langs/el_GR/admin.lang @@ -574,7 +574,7 @@ Module510Name=Μισθοί Module510Desc=Record and track employee payments Module520Name=Δάνεια Module520Desc=Διαχείριση δανείων -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Το χαρακτηριστικό %s έχει λάθος τιμή. AlphaNumOnlyLowerCharsAndNoSpace=μόνο αλφαριθμητικά και πεζά γράμματα χωρίς κενά SendmailOptionNotComplete=Προσοχή, σε μερικά συστήματα Linux, για να στείλετε e-mail από το e-mail σας, το sendmail εγκατάστασης εκτέλεση πρέπει conatins επιλογή-βα (mail.force_extra_parameters παράμετρος σε php.ini αρχείο σας). Αν δεν ορισμένοι παραλήπτες λαμβάνουν μηνύματα ηλεκτρονικού ταχυδρομείου, προσπαθήστε να επεξεργαστείτε αυτή την PHP με την παράμετρο-mail.force_extra_parameters = βα). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Βελτιστοποίηση αναζήτησης -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=Xdebug είναι φορτωμένο. -XCacheInstalled=XCache είναι φορτωμένο. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=Λίστα ειδοποιήσεων ανά χρήστη* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/el_GR/bills.lang b/htdocs/langs/el_GR/bills.lang index 23c3e7a1d6b..7d0689ce67d 100644 --- a/htdocs/langs/el_GR/bills.lang +++ b/htdocs/langs/el_GR/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Η πληρωμή είναι μεγαλύτερη HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Χαρακτηρισμός ως 'Πληρωμένο'' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Χαρακτηρισμός ως 'Μη Εξοφλημένο' ClassifyCanceled=Χαρακτηρισμός ως 'Εγκαταλελειμμένο' ClassifyClosed=Χαρακτηρισμός ως 'Κλειστό' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Εμφάνιση τιμολογίου αντικατάστα ShowInvoiceAvoir=Εμφάνιση πιστωτικού τιμολογίου ShowInvoiceDeposit=Εμφάνιση τιμολογίου κατάθεσης ShowInvoiceSituation=Εμφάνιση κατάστασης τιμολογίου +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Εμφάνιση πληρωμής AlreadyPaid=Ήδη πληρωμένο AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/el_GR/errors.lang b/htdocs/langs/el_GR/errors.lang index 4d36d0a8a43..9a3f85ac11a 100644 --- a/htdocs/langs/el_GR/errors.lang +++ b/htdocs/langs/el_GR/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Ειδικοί χαρακτήρες δεν ε ErrorNumRefModel=Μια αναφορά υπάρχει στη βάση δεδομένων (%s) και δεν είναι συμβατές με αυτόν τον κανόνα αρίθμηση. Αφαιρέστε το αρχείο ή μετονομαστεί αναφοράς για να ενεργοποιήσετε αυτή την ενότητα. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Σφάλμα στην μάσκα ErrorBadMaskFailedToLocatePosOfSequence=Σφάλμα, μάσκα χωρίς τον αύξοντα αριθμό ErrorBadMaskBadRazMonth=Σφάλμα, κακή αξία επαναφορά @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/el_GR/main.lang b/htdocs/langs/el_GR/main.lang index 9b49242e3b3..98b6c9bc764 100644 --- a/htdocs/langs/el_GR/main.lang +++ b/htdocs/langs/el_GR/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Επαφές/Διευθύνσεις για αυτό AddressesForCompany=Διευθύνσεις για αυτό τον Πελ./Προμ. ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Εκδηλώσεις σχετικά με αυτό το μέλος ActionsOnProduct=Events about this product NActionsLate=%s καθυστερ. @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Σύνδεση με συμβόλαιο LinkToIntervention=Σύνδεση σε παρέμβαση +LinkToTicket=Link to ticket CreateDraft=Δημιουργία σχεδίου SetToDraft=Επιστροφή στο προσχέδιο ClickToEdit=Κάντε κλικ για να επεξεργαστείτε diff --git a/htdocs/langs/el_GR/products.lang b/htdocs/langs/el_GR/products.lang index 4b73e391054..ce0f121f861 100644 --- a/htdocs/langs/el_GR/products.lang +++ b/htdocs/langs/el_GR/products.lang @@ -2,6 +2,7 @@ ProductRef=Κωδ. Προϊόντος. ProductLabel=Ετικέτα Προϊόντος ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Καρτέλα Προϊόντων/Υπηρεσιών diff --git a/htdocs/langs/el_GR/stripe.lang b/htdocs/langs/el_GR/stripe.lang index 246e61d8d00..3a711225139 100644 --- a/htdocs/langs/el_GR/stripe.lang +++ b/htdocs/langs/el_GR/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/el_GR/withdrawals.lang b/htdocs/langs/el_GR/withdrawals.lang index 3e61ea098c5..79dd2bff9b9 100644 --- a/htdocs/langs/el_GR/withdrawals.lang +++ b/htdocs/langs/el_GR/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Απόσυρση αρχείο SetToStatusSent=Ρυθμίστε την κατάσταση "αποστολή αρχείου" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Στατιστικά στοιχεία από την κατάσταση των γραμμών -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/en_AU/admin.lang b/htdocs/langs/en_AU/admin.lang index 7b0034e0ce8..447918b3b95 100644 --- a/htdocs/langs/en_AU/admin.lang +++ b/htdocs/langs/en_AU/admin.lang @@ -1,9 +1,11 @@ # Dolibarr language file - Source file is en_US - admin OldVATRates=Old GST rate NewVATRates=New GST rate +Module600Name=Notifications on business event DictionaryVAT=GST Rates or Sales Tax Rates OptionVatMode=GST due -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications LinkColor=Colour of links OperationParamDesc=Define values to use for action, or how to extract values. For example:
objproperty1=SET:abc
objproperty1=SET:a value with replacement of __objproperty1__
objproperty3=SETIFEMPTY:abc
objproperty4=EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

Use a ; char as separator to extract or set several properties. diff --git a/htdocs/langs/en_AU/withdrawals.lang b/htdocs/langs/en_AU/withdrawals.lang index 503597bc8ec..967d1f20411 100644 --- a/htdocs/langs/en_AU/withdrawals.lang +++ b/htdocs/langs/en_AU/withdrawals.lang @@ -1,2 +1,2 @@ # Dolibarr language file - Source file is en_US - withdrawals -ThirdPartyBankCode=Third party bank code or BSB +RUM=Unique Mandate Reference (UMR) diff --git a/htdocs/langs/en_CA/admin.lang b/htdocs/langs/en_CA/admin.lang index 93fc98ac3e2..ae0ffe7f7c7 100644 --- a/htdocs/langs/en_CA/admin.lang +++ b/htdocs/langs/en_CA/admin.lang @@ -1,8 +1,10 @@ # Dolibarr language file - Source file is en_US - admin +Module600Name=Notifications on business event LocalTax1Management=PST Management CompanyZip=Postal code LDAPFieldZip=Postal code -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications FormatZip=Postal code OperationParamDesc=Define values to use for action, or how to extract values. For example:
objproperty1=SET:abc
objproperty1=SET:a value with replacement of __objproperty1__
objproperty3=SETIFEMPTY:abc
objproperty4=EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

Use a ; char as separator to extract or set several properties. diff --git a/htdocs/langs/en_GB/accountancy.lang b/htdocs/langs/en_GB/accountancy.lang index ebc1a049f9c..83f77f8c47c 100644 --- a/htdocs/langs/en_GB/accountancy.lang +++ b/htdocs/langs/en_GB/accountancy.lang @@ -117,7 +117,6 @@ Selectmodelcsv=Select an example of export ChartofaccountsId=Chart of accounts ID InitAccountancyDesc=This page can be used to create a financial account for products and services that do not have a financial account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account for linking transaction records about payments, salaries, donations, taxes and vat when no specific finance account had already been set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. OptionModeProductSell=Type of sale OptionModeProductBuy=Type of purchase OptionModeProductSellDesc=Show all products with finance accounts for sales. diff --git a/htdocs/langs/en_GB/admin.lang b/htdocs/langs/en_GB/admin.lang index c5e3e488406..3f23aecf4be 100644 --- a/htdocs/langs/en_GB/admin.lang +++ b/htdocs/langs/en_GB/admin.lang @@ -41,12 +41,14 @@ UMaskExplanation=This parameter allows you to define permissions set by default ListOfDirectories=List of OpenDocument template directories ListOfDirectoriesForModelGenODT=List of directories containing template files in OpenDocument format.

Put here full path of directories.
Add a carriage return between each directory.
To add a directory of the GED module, add here DOL_DATA_ROOT/ecm/yourdirectoryname.

Files in those directories must end with .odt or .ods. FollowingSubstitutionKeysCanBeUsed=
To learn how to create your .odt document templates, before storing them in those directories, read wiki documentation: +Module600Name=Notifications on business event Module50200Name=PayPal DictionaryAccountancyJournal=Finance journals CompanyZip=Postcode LDAPFieldZip=Postcode GenbarcodeLocation=Barcode generation command line tool (used by internal engine for some bar code types). Must be compatible with "genbarcode".
For example: /usr/local/bin/genbarcode -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications FormatZip=Postcode OperationParamDesc=Define values to use for action, or how to extract values. For example:
objproperty1=SET:abc
objproperty1=SET:a value with replacement of __objproperty1__
objproperty3=SETIFEMPTY:abc
objproperty4=EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

Use a ; char as separator to extract or set several properties. diff --git a/htdocs/langs/en_GB/withdrawals.lang b/htdocs/langs/en_GB/withdrawals.lang index 786cf4c2179..b34ed7e8f1f 100644 --- a/htdocs/langs/en_GB/withdrawals.lang +++ b/htdocs/langs/en_GB/withdrawals.lang @@ -1,6 +1,5 @@ # Dolibarr language file - Source file is en_US - withdrawals NotPossibleForThisStatusOfWithdrawReceiptORLine=Not yet possible. Payment status must be set to 'credited' before declaring reject on specific lines. -NbOfInvoiceToWithdrawWithInfo=No. of customer invoices with direct debit payment orders having defined bank account information AmountToWithdraw=Amount to pay NoInvoiceToWithdraw=No customer invoice with open 'Direct Debit requests' is waiting. Go on tab '%s' on invoice card to make a request. MakeWithdrawRequest=Make a Direct Debit payment request @@ -14,10 +13,9 @@ OrderWaiting=Waiting for action NotifyTransmision=Payment Transmission NotifyCredit=Payment Credit WithdrawalFileNotCapable=Unable to generate Payment receipt file for your country %s (Your country is not supported) -ShowWithdraw=Show Payment -IfInvoiceNeedOnWithdrawPaymentWontBeClosed=However, if invoice has at least one payment not yet processed, it won't be set as paid to allow prior Payment management. DoStandingOrdersBeforePayments=This tab allows you to request a direct debit payment order. Once done, go into menu Bank->Direct Debit orders to manage the direct debit payment order. When the payment order is closed, payment on the invoice will be automatically recorded, and the invoice closed if the outstanding balance is null. WithdrawalFile=Payment file +RUM=Unique Mandate Reference (UMR) WithdrawRequestAmount=The amount of Direct Debit request: WithdrawRequestErrorNilAmount=Unable to create a Direct Debit request for an empty amount. SEPALegalText=By signing this mandate form, you authorise (A) %s to send instructions to your bank to debit your account and (B) your bank to debit your account in accordance with the instructions from %s. As part of your rights, you are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. A refund must be claimed within 8 weeks starting from the date on which your account was debited. Your rights regarding the above mandate are explained in a statement that you can obtain from your bank. diff --git a/htdocs/langs/en_IN/admin.lang b/htdocs/langs/en_IN/admin.lang index 02a8712d64f..d19942507b6 100644 --- a/htdocs/langs/en_IN/admin.lang +++ b/htdocs/langs/en_IN/admin.lang @@ -1,6 +1,7 @@ # Dolibarr language file - Source file is en_US - admin Module20Name=Quotations Module20Desc=Management of quotations +Module600Name=Notifications on business event Permission21=Read quotations Permission22=Create/modify quotations Permission24=Validate quotations @@ -13,7 +14,8 @@ ProposalsNumberingModules=Quotation numbering models ProposalsPDFModules=Quotation documents models FreeLegalTextOnProposal=Free text on quotations WatermarkOnDraftProposal=Watermark on draft quotations (none if empty) -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications MailToSendProposal=Customer quotations OperationParamDesc=Define values to use for action, or how to extract values. For example:
objproperty1=SET:abc
objproperty1=SET:a value with replacement of __objproperty1__
objproperty3=SETIFEMPTY:abc
objproperty4=EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

Use a ; char as separator to extract or set several properties. diff --git a/htdocs/langs/es_CL/admin.lang b/htdocs/langs/es_CL/admin.lang index 7e164b901b1..691cbf3bd06 100644 --- a/htdocs/langs/es_CL/admin.lang +++ b/htdocs/langs/es_CL/admin.lang @@ -910,12 +910,9 @@ SuhosinSessionEncrypt=Almacenamiento de sesión cifrado por Suhosin ConditionIsCurrently=La condición es actualmente %s YouUseBestDriver=Utiliza el controlador %s, que es el mejor controlador disponible en la actualidad. YouDoNotUseBestDriver=Utiliza el controlador %s, pero se recomienda el controlador %s. -NbOfProductIsLowerThanNoPb=Sólo tiene productos / servicios %s en la base de datos. Esto no requiere ninguna optimización particular. SearchOptim=Optimización de búsqueda -YouHaveXProductUseSearchOptim=Tiene productos %s en la base de datos. Debe agregar la constante PRODUCT_DONOTSEARCH_ANYWHERE a 1 en Home-Setup-Other. Limite la búsqueda al comienzo de las cadenas, lo que hace posible que la base de datos utilice índices y debería obtener una respuesta inmediata. BrowserIsOK=Está utilizando el navegador web %s. Este navegador está bien para la seguridad y el rendimiento. BrowserIsKO=Está utilizando el navegador web %s. Se sabe que este navegador es una mala elección para la seguridad, el rendimiento y la confiabilidad. Recomendamos usar Firefox, Chrome, Opera o Safari. -XCacheInstalled=XCache está cargado. AddRefInList=Mostrar cliente / vendedor ref. Lista de información (lista de selección o cuadro combinado) y la mayoría de los hipervínculos.
Aparecerán terceros con un formato de nombre de "CC12345 - SC45678 - The Big Company corp". en lugar de "The Big Company corp". AddAdressInList=Mostrar la lista de información de la dirección del cliente / proveedor (seleccionar lista o cuadro combinado)
Aparecerán terceros con el formato de nombre "The Big Company corp. - 21 jump street 123456 Big town - USA" en lugar de "The Big Company corp". AskForPreferredShippingMethod=Pregunte por el método de envío preferido para terceros. @@ -1300,9 +1297,6 @@ TemplatePDFExpenseReports=Plantillas de documentos para generar el documento de ExpenseReportsIkSetup=Configuración del módulo Informes de gastos: índice Milles NoModueToManageStockIncrease=No se ha activado ningún módulo capaz de gestionar el aumento automático de existencias. El aumento de existencias se realizará solo con la entrada manual. YouMayFindNotificationsFeaturesIntoModuleNotification=Puede encontrar opciones para notificaciones por correo electrónico habilitando y configurando el módulo "Notificación". -ListOfNotificationsPerUser=Lista de notificaciones por usuario * -ListOfNotificationsPerUserOrContact=Lista de notificaciones (eventos) disponibles por usuario * o por contacto ** -ListOfFixedNotifications=Lista de notificaciones fijas GoOntoUserCardToAddMore=Vaya a la pestaña "Notificaciones" de un usuario para agregar o eliminar notificaciones para usuarios GoOntoContactCardToAddMore=Vaya a la pestaña "Notificaciones" de un tercero para agregar o eliminar notificaciones de contactos/direcciones Threshold=Límite @@ -1440,10 +1434,6 @@ DebugBar=Barra de debug WarningValueHigherSlowsDramaticalyOutput=Advertencia, los valores más altos ralentizan dramáticamente la salida. EXPORTS_SHARE_MODELS=Los modelos de exportación se comparten con todos. IfTrackingIDFoundEventWillBeLinked=Tenga en cuenta que si se encuentra un ID de seguimiento en el correo electrónico entrante, el evento se vinculará automáticamente a los objetos relacionados. -IFTTT_SERVICE_KEY=IFTTT clave de servicio -IFTTTDesc=Este módulo está diseñado para desencadenar eventos en IFTTT y / o para ejecutar alguna acción en desencadenadores IFTTT externos. -UrlForIFTTT=Punto final de URL para IFTTT -YouWillFindItOnYourIFTTTAccount=Lo encontrarás en tu cuenta de IFTTT. EndPointFor=Punto final para %s: %s DeleteEmailCollector=Eliminar el colector de correo electrónico ConfirmDeleteEmailCollector=¿Estás seguro de que deseas eliminar este recopilador de correo electrónico? diff --git a/htdocs/langs/es_CO/admin.lang b/htdocs/langs/es_CO/admin.lang index c931369f00e..208461a50aa 100644 --- a/htdocs/langs/es_CO/admin.lang +++ b/htdocs/langs/es_CO/admin.lang @@ -729,12 +729,9 @@ YesInSummer=Si en verano SuhosinSessionEncrypt=Almacenamiento de sesión encriptado por Suhosin. ConditionIsCurrently=La condición es actualmente %s YouDoNotUseBestDriver=Utiliza el controlador %s pero se recomienda el controlador %s. -NbOfProductIsLowerThanNoPb=Solo tiene %s productos / servicios en la base de datos. Esto no requiere ninguna optimización particular. SearchOptim=Optimización de búsqueda -YouHaveXProductUseSearchOptim=Tienes %s productos en la base de datos. Debe agregar la constante PRODUCT_DONOTSEARCH_ANYWHERE a 1 en Home-Setup-Other. Limite la búsqueda al comienzo de las cadenas, lo que hace posible que la base de datos utilice índices y debería obtener una respuesta inmediata. BrowserIsOK=Está utilizando el navegador web %s. Este navegador está bien para la seguridad y el rendimiento. BrowserIsKO=Está utilizando el navegador web %s. Se sabe que este navegador es una mala elección para la seguridad, el rendimiento y la confiabilidad. Recomendamos el uso de Firefox, Chrome, Opera o Safari. -XCacheInstalled=XCache está cargado. AskForPreferredShippingMethod=Pregunte por el método de envío preferido para terceros. FillThisOnlyIfRequired=Ejemplo: +2 (rellenar solo si se experimentan problemas de compensación de zona horaria) PasswordGenerationStandard=Devuelva una contraseña generada de acuerdo con el algoritmo interno de Dolibarr: 8 caracteres que contienen números compartidos y caracteres en minúscula. @@ -1069,9 +1066,6 @@ ExpenseReportsIkSetup=Configuración de los informes de gastos del módulo - Ín ExpenseReportsRulesSetup=Configuración de los informes de gastos del módulo - Reglas ExpenseReportNumberingModules=Módulo de numeración de informes de gastos. NoModueToManageStockIncrease=No se ha activado ningún módulo capaz de gestionar el aumento automático de stock. El aumento de stock se realizará solo con entrada manual. -ListOfNotificationsPerUser=Lista de notificaciones por usuario * -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications GoOntoUserCardToAddMore=Vaya a la pestaña "Notificaciones" de un usuario para agregar o eliminar notificaciones para usuarios GoOntoContactCardToAddMore=Vaya a la pestaña "Notificaciones" de un tercero para agregar o eliminar notificaciones de contactos / direcciones Threshold=Límite diff --git a/htdocs/langs/es_DO/admin.lang b/htdocs/langs/es_DO/admin.lang index 9bc2c2bc07b..79fb1cc6155 100644 --- a/htdocs/langs/es_DO/admin.lang +++ b/htdocs/langs/es_DO/admin.lang @@ -7,6 +7,4 @@ Permission93=Eliminar impuestos e ITBIS DictionaryVAT=Tasa de ITBIS (Impuesto sobre ventas en EEUU) UnitPriceOfProduct=Precio unitario sin ITBIS de un producto OptionVatMode=Opción de carga de ITBIS -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications OperationParamDesc=Define values to use for action, or how to extract values. For example:
objproperty1=SET:abc
objproperty1=SET:a value with replacement of __objproperty1__
objproperty3=SETIFEMPTY:abc
objproperty4=EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

Use a ; char as separator to extract or set several properties. diff --git a/htdocs/langs/es_EC/admin.lang b/htdocs/langs/es_EC/admin.lang index e388f61c604..f2ffc48e3f7 100644 --- a/htdocs/langs/es_EC/admin.lang +++ b/htdocs/langs/es_EC/admin.lang @@ -901,12 +901,9 @@ SuhosinSessionEncrypt=Almacenamiento de sesión cifrado por Suhosin ConditionIsCurrently=Condición actual %s YouUseBestDriver=Utiliza el controlador %s, que es el mejor controlador actualmente disponible. YouDoNotUseBestDriver=Utiliza el controlador %s, pero se recomienda el controlador %s. -NbOfProductIsLowerThanNoPb=Solo tiene %s productos / servicios en la base de datos. Esto no requiere ninguna optimización particular. SearchOptim=Optimización de la búsqueda -YouHaveXProductUseSearchOptim=Tienes %s productos en la base de datos. Debe agregar la constante PRODUCT_DONOTSEARCH_ANYWHERE a 1 en Home-Setup-Other. Limite la búsqueda al comienzo de las cadenas, lo que hace posible que la base de datos utilice índices y debería obtener una respuesta inmediata. BrowserIsOK=Está utilizando el navegador web %s. Este navegador está bien para la seguridad y el rendimiento. BrowserIsKO=Está utilizando el navegador web %s. Se sabe que este navegador es una mala elección para la seguridad, el rendimiento y la confiabilidad. Recomendamos utilizar Firefox, Chrome, Opera o Safari. -XCacheInstalled=XCache está cargado. AddRefInList=Mostrar cliente / vendedor ref. Lista de información (lista de selección o cuadro combinado) y la mayoría del hipervínculo.
Los terceros aparecerán con un formato de nombre de "CC12345 - SC45678 - The Big Company corp". en lugar de "The Big Company corp". AddAdressInList=Mostrar la lista de información de dirección del cliente / proveedor (seleccionar lista o cuadro combinado)
Aparecerán terceros con el formato de nombre "The Big Company corp. - 21 jump street 123456 Big town - USA" en lugar de "The Big Company corp". AskForPreferredShippingMethod=Pregunte por el método de envío preferido para terceros. @@ -1303,9 +1300,6 @@ ExpenseReportsSetup=Configuración del módulo Informes de gastos TemplatePDFExpenseReports=Plantillas para generar el documento de informe de gastos NoModueToManageStockIncrease=No se ha activado ningún módulo capaz de gestionar el aumento automático de existencias. El aumento de existencias se realiza sólo en la entrada manual. YouMayFindNotificationsFeaturesIntoModuleNotification=Puede encontrar opciones para notificaciones por correo electrónico habilitando y configurando el módulo "Notificación". -ListOfNotificationsPerUser=Lista de notificaciones por usuario * -ListOfNotificationsPerUserOrContact=Lista de notificaciones (eventos) disponibles por usuario * o por contacto ** -ListOfFixedNotifications=Lista de notificaciones fijas GoOntoUserCardToAddMore=Vaya a la pestaña "Notificaciones" de un usuario para agregar o eliminar notificaciones para usuarios GoOntoContactCardToAddMore=Vaya a la pestaña "Notificaciones" de un cliente / proveedor para eliminar o eliminar notificaciones de contactos / direcciones Threshold=Límite diff --git a/htdocs/langs/es_ES/accountancy.lang b/htdocs/langs/es_ES/accountancy.lang index c98d1b1ed99..cf6f11de763 100644 --- a/htdocs/langs/es_ES/accountancy.lang +++ b/htdocs/langs/es_ES/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Diarios contables AccountingJournal=Diario contable NewAccountingJournal=Nuevo diario contable ShowAccoutingJournal=Mostrar diario contable -Nature=Naturaleza +NatureOfJournal=Nature of Journal AccountingJournalType1=Operaciones varias AccountingJournalType2=Ventas AccountingJournalType3=Compras @@ -291,6 +291,7 @@ Modelcsv_quadratus=Exportar a Quadratus QuadraCompta Modelcsv_ebp=Exportar a EBP Modelcsv_cogilog=Eportar a Cogilog Modelcsv_agiris=Exportar a Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Exportar a OpenConcerto (En pruebas) Modelcsv_configurable=Exportación CSV Configurable Modelcsv_FEC=Exportación FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Id plan contable InitAccountancy=Iniciar contabilidad InitAccountancyDesc=Puede usar esta página para inicializar el código contable en productos y servicios que no tienen código contable definido para ventas y compras DefaultBindingDesc=Esta página puede usarse para establecer una cuenta predeterminada que se utilizará para enlazar registros de salarios, donaciones, impuestos e IVA cuando no tengan establecida una cuenta contable. -DefaultClosureDesc=Esta página se puede usar para configurar los parámetros que se usarán para incluir un balance general. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Opciones OptionModeProductSell=Modo ventas OptionModeProductSellIntra=Modo Ventas exportación CEE diff --git a/htdocs/langs/es_ES/admin.lang b/htdocs/langs/es_ES/admin.lang index edbac2e2781..e801f9609f6 100644 --- a/htdocs/langs/es_ES/admin.lang +++ b/htdocs/langs/es_ES/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salarios Module510Desc=Registro y seguimiento del pago de los salarios de sus empleados Module520Name=Préstamos Module520Desc=Gestión de créditos -Module600Name=Notificaciones +Module600Name=Notifications on business event Module600Desc=Envía notificaciones por e-mail desencadenados por algunos eventos a los usuarios (configuración definida para cada usuario), los contactos de terceros (configuración definida en cada tercero) o e-mails definidos Module600Long=Tenga en cuenta que este módulo envía mensajes de e-mail en tiempo real cuando se produce un evento. Si está buscando una función para enviar recordatorios por e-mail de los eventos de su agenda, vaya a la configuración del módulo Agenda. Module610Name=Variantes de productos @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Campos adicionales (pedidos a proveedores) ExtraFieldsSupplierInvoices=Campos adicionales (facturas) ExtraFieldsProject=Campos adicionales (proyectos) ExtraFieldsProjectTask=Campos adicionales (tareas) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=El campo %s tiene un valor no válido AlphaNumOnlyLowerCharsAndNoSpace=sólo alfanuméricos y minúsculas sin espacio SendmailOptionNotComplete=Atención, en algunos sistemas Linux, con este método de envio, para poder enviar mails en su nombre, la configuración de sendmail debe contener la opción -ba (parámetro mail.force_extra_parameters en el archivo php.ini). Si algunos de sus destinatarios no reciben sus mensajes, pruebe a modificar este parámetro PHP con mail.force_extra_parameters=-ba. @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Almacenamiento de sesiones cifradas por Suhosin ConditionIsCurrently=Actualmente la condición es %s YouUseBestDriver=Está usando el driver %s, actualmente es el mejor driver disponible. YouDoNotUseBestDriver=Usa el driver %s aunque se recomienda usar el driver %s. -NbOfProductIsLowerThanNoPb=Tiene %s productos/servicios en su base de datos. No es necesaria ninguna optimización en particular. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Buscar optimización -YouHaveXProductUseSearchOptim=Tiene %s productos en su base de datos. Debería añadir la constante PRODUCT_DONOTSEARCH_ANYWHERE a 1 en Inicio-Configuración-Varios, limitando la búsqueda al principio de la cadena lo que hace posible que la base de datos use el índice y se obtenga una respuesta inmediata. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Usa el navegador web %s. Este navegador está optimizado para la seguridad y el rendimiento. BrowserIsKO=Usa el navegador web %s. Este navegador es una mala opción para la seguridad, rendimiento y fiabilidad. Aconsejamos utilizar Firefox, Chrome, Opera o Safari. -XDebugInstalled=XDebug está cargado. -XCacheInstalled=XCache está cargado +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Mostrar código de cliente/proveedor en los listados (y selectores) y enlaces.
Los terceros aparecerán con el nombre "CC12345 - SC45678 - The big company coorp", en lugar de "The big company coorp". AddAdressInList=Mostrar la dirección del cliente/proveedor en los listados (y selectores)
Los terceros aparecerán con el nombre "The big company coorp - 21 jump street 123456 Big town - USA ", en lugar de "The big company coorp". AskForPreferredShippingMethod=Consultar por el método preferido de envío a terceros. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Configuración del módulo Informes de gastos - Reglas ExpenseReportNumberingModules=Módulo de numeración de informes de gastos NoModueToManageStockIncrease=No hay activado módulo para gestionar automáticamente el incremento de stock. El incremento de stock se realizará solamente con entrada manual YouMayFindNotificationsFeaturesIntoModuleNotification=Puede encontrar opciones para notificaciones de e-mail activando y configurando el módulo "Notificaciones". -ListOfNotificationsPerUser=Listado de notificaciones por usuario* -ListOfNotificationsPerUserOrContact=Listado de notificaciones (eventos) por usuario* o por contacto** -ListOfFixedNotifications=Listado de notificaciones fijas +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Vaya a la pestaña "Notificaciones" de un usuario para añadir o elliminar notificaciones a usuarios GoOntoContactCardToAddMore=Vaya a la pestaña "Notificaciones" de un contacto de tercero para añadir o eliminar notificaciones para contactos/direcciones Threshold=Valor mínimo/umbral @@ -1898,6 +1900,11 @@ OnMobileOnly=Sólo en pantalla pequeña (smartphone) DisableProspectCustomerType=Deshabilitar el tipo de tercero "Cliente Potencial/Cliente" (por lo tanto, el tercero debe ser Cliente Potencial o Cliente pero no pueden ser ambos) MAIN_OPTIMIZEFORTEXTBROWSER=Simplificar interfaz para ciegos. MAIN_OPTIMIZEFORTEXTBROWSERDesc=Active esta opción sí es usted ciego, or sí usa la aplicación de un navegador de texto como Lynx o Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Este valor puede ser cambiado por cada usuario desde su página - tab ' 1%s ' DefaultCustomerType=Tipo de Tercero por defecto para el formulario de creación de "Nuevo cliente" ABankAccountMustBeDefinedOnPaymentModeSetup=Nota: Debe indicarse la cuenta bancaria en el módulo de cada modo de pago (Paypal, Stripe, ...) para que esta función funcione. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Número de líneas a mostrar en la pestaña de registros UseDebugBar=Usa la barra de debug DEBUGBAR_LOGS_LINES_NUMBER=Número de últimas líneas de registro para mantener en la consola. WarningValueHigherSlowsDramaticalyOutput=Advertencia, los valores altos ralentizan dramáticamente la salida. -DebugBarModuleActivated=El módulo debugbar está activado y ralentiza dramáticamente la interfaz +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Los modelos de exportación son compartidos con todos. ExportSetup=Configuración del módulo de exportación. InstanceUniqueID=ID única de la instancia @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=Lo encontrará en su cuenta de IFTTT. EndPointFor=End point for %s : %s DeleteEmailCollector=Eliminar el recolector de e-mail ConfirmDeleteEmailCollector=¿Está seguro de que querer eliminar este recolector de e-mail? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/es_ES/bills.lang b/htdocs/langs/es_ES/bills.lang index fe375fa91c3..0d5289285aa 100644 --- a/htdocs/langs/es_ES/bills.lang +++ b/htdocs/langs/es_ES/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Pago superior al resto a pagar HelpPaymentHigherThanReminderToPay=Atención, el importe del pago de una o más facturas es superior al resto a pagar.
Corrija su entrada, de lo contrario, confirme y piense en crear un abono de lo percibido en exceso para cada factura sobre-pagada. HelpPaymentHigherThanReminderToPaySupplier=Atención, el importe del pago de una o más facturas es superior al resto a pagar.
Corrija su entrada, de lo contrario, confirme y piense en crear un abono de lo percibido en exceso para cada factura sobre-pagada. ClassifyPaid=Clasificar 'Pagado' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Clasificar 'Pagado parcialmente' ClassifyCanceled=Clasificar 'Abandonado' ClassifyClosed=Clasificar 'Cerrado' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Ver factura rectificativa ShowInvoiceAvoir=Ver abono ShowInvoiceDeposit=Ver factura de anticipo ShowInvoiceSituation=Ver situación factura +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Ver pago AlreadyPaid=Ya pagado AlreadyPaidBack=Ya reembolsado diff --git a/htdocs/langs/es_ES/errors.lang b/htdocs/langs/es_ES/errors.lang index bc43d68b263..10f6d76c63d 100644 --- a/htdocs/langs/es_ES/errors.lang +++ b/htdocs/langs/es_ES/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Los caracteres especiales no son admitidos po ErrorNumRefModel=Hay una referencia en la base de datos (%s) y es incompatible con esta numeración. Elimine la línea o renombre la referencia para activar este módulo. ErrorQtyTooLowForThisSupplier=Cantidad insuficiente para este proveedor o no hay precio definido en este producto para este proveedor ErrorOrdersNotCreatedQtyTooLow=Algunos pedidos no se han creado debido a una cantidad demasiado baja -ErrorModuleSetupNotComplete=La configuración del módulo parece incompleta. Vaya a Inicio - Configuración - Módulos para completarla. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error en la máscara ErrorBadMaskFailedToLocatePosOfSequence=Error, sin número de secuencia en la máscara ErrorBadMaskBadRazMonth=Error, valor de vuelta a 0 incorrecto @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=La URL %s debe comenzar con http:// o https:// ErrorNewRefIsAlreadyUsed=Error, la nueva referencia ya está en uso ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, no es posible eliminar un pago enlazado a una factura cerrada. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=Se fijó una contraseña para este miembro. Sin embargo, no se ha creado ninguna cuenta de usuario. Así que esta contraseña no se puede utilizar para acceder a Dolibarr. Puede ser utilizada por un módulo/interfaz externo, pero si no necesitar definir accesos de un miembro, puede desactivar la opción "Administrar un inicio de sesión para cada miembro" en la configuración del módulo miembros. Si necesita administrar un inicio de sesión, pero no necesita ninguna contraseña, puede dejar este campo vacío para evitar esta advertencia. Nota: También puede usarse el correo electrónico como inicio de sesión si el miembro está vinculada a un usuario. WarningMandatorySetupNotComplete=Haga clic aquí para configurar los parámetros obligatorios WarningEnableYourModulesApplications=Haga clic aquí para activar sus módulos y aplicaciones diff --git a/htdocs/langs/es_ES/main.lang b/htdocs/langs/es_ES/main.lang index 46a4e6b3eda..525c46746fb 100644 --- a/htdocs/langs/es_ES/main.lang +++ b/htdocs/langs/es_ES/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contactos/direcciones de este tercero AddressesForCompany=Direcciones de este tercero ActionsOnCompany=Eventos de este tercero ActionsOnContact=Eventos de este contacto/dirección +ActionsOnContract=Events for this contract ActionsOnMember=Eventos respecto a este miembro ActionsOnProduct=Eventos sobre este producto NActionsLate=%s en retraso @@ -759,6 +760,7 @@ LinkToSupplierProposal=Enlazar a presupuesto de proveedor LinkToSupplierInvoice=Enlazar a factura de proveedor LinkToContract=Enlazar a contrato LinkToIntervention=Enlazar a intervención +LinkToTicket=Link to ticket CreateDraft=Crear borrador SetToDraft=Volver a borrador ClickToEdit=Clic para editar diff --git a/htdocs/langs/es_ES/products.lang b/htdocs/langs/es_ES/products.lang index 68d21c54e3c..e97d80073d5 100644 --- a/htdocs/langs/es_ES/products.lang +++ b/htdocs/langs/es_ES/products.lang @@ -2,6 +2,7 @@ ProductRef=Ref. producto ProductLabel=Etiqueta producto ProductLabelTranslated=Traducción etiqueta de producto +ProductDescription=Product description ProductDescriptionTranslated=Traducción descripción de producto ProductNoteTranslated=Traducción notas de producto ProductServiceCard=Ficha producto/servicio diff --git a/htdocs/langs/es_ES/stripe.lang b/htdocs/langs/es_ES/stripe.lang index de38ab59e7a..65ca60c3c51 100644 --- a/htdocs/langs/es_ES/stripe.lang +++ b/htdocs/langs/es_ES/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=Cuenta de usuario para usar en algunos e-mails de no StripePayoutList=Lista de pagos de Stripe ToOfferALinkForTestWebhook=Enlace para configurar Stripe WebHook para llamar a la IPN (modo de prueba) ToOfferALinkForLiveWebhook=Enlace para configurar Stripe WebHook para llamar a la IPN (modo real) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/es_ES/withdrawals.lang b/htdocs/langs/es_ES/withdrawals.lang index e31170475ac..c83868a0dc0 100644 --- a/htdocs/langs/es_ES/withdrawals.lang +++ b/htdocs/langs/es_ES/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Archivo de la domiciliación SetToStatusSent=Clasificar como "Archivo enviado" ThisWillAlsoAddPaymentOnInvoice=Se crearán los pagos de las facturas y las clasificarán como pagadas si el resto a pagar es 0 StatisticsByLineStatus=Estadísticas por estados de líneas -RUM=RUM +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Referencia Única de Mandato RUMWillBeGenerated=Si está vacío,se generará un número RUM (Referencia Unica de Mandato) una vez que se guarde la información de la cuenta bancaria WithdrawMode=Modo domiciliación (FRST o RECUR) diff --git a/htdocs/langs/es_MX/accountancy.lang b/htdocs/langs/es_MX/accountancy.lang index d712bd5c6c4..d7f786c2198 100644 --- a/htdocs/langs/es_MX/accountancy.lang +++ b/htdocs/langs/es_MX/accountancy.lang @@ -56,7 +56,6 @@ AccountingJournalType5=Informe de gastos AccountingJournalType9=Tiene nuevo ErrorAccountingJournalIsAlreadyUse=Este diario ya está en uso ExportDraftJournal=Exportar borrador de diario -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. SomeMandatoryStepsOfSetupWereNotDone=Algunos pasos obligatorios de la instalación no se realizaron, favor de completar ExportNotSupported=El formato de exportación configurado no se admite en esta página NoJournalDefined=Ningún diario definido diff --git a/htdocs/langs/es_MX/admin.lang b/htdocs/langs/es_MX/admin.lang index 6c0f8fd1ec9..f89282ac0f6 100644 --- a/htdocs/langs/es_MX/admin.lang +++ b/htdocs/langs/es_MX/admin.lang @@ -1,10 +1,12 @@ # Dolibarr language file - Source file is en_US - admin VersionProgram=Versión del programa +VersionLastInstall=Instalar la versión inicial +VersionLastUpgrade=Actualizar a la Versión mâs reciente FileCheck=Comprobación de integridad del conjunto de archivos FileCheckDesc=Esta herramienta te permite comprobar la integridad de los archivos y la configuración de tu aplicación, comparando cada archivo con el archivo oficial. El valor de algunas constantes de la configuración también podria ser comprobado. Tu puedes usar esta herramienta para determinar si cualquiera de los archivos a sido modificado (ejem. por un hacker). FileIntegrityIsStrictlyConformedWithReference=La integridad de los archivos está estrictamente conformada con la referencia. +FileIntegrityIsOkButFilesWereAdded=La comprobación de la integridad de archivos ha terminado, sin embargo algunos archivos nuevos han sido agregados. FileIntegritySomeFilesWereRemovedOrModified=La verificación de integridad de los archivos ha fallado. Algunos archivos fueron modificados, eliminados o agregados. -GlobalChecksum=Checksum global MakeIntegrityAnalysisFrom=Hacer análisis de integridad de los archivos de la aplicación de LocalSignature=Firma local integrada (menos confiable) RemoteSignature=Firma remota distante (mas confiable) @@ -29,7 +31,7 @@ ClientSortingCharset=Recopilación del cliente WarningModuleNotActive=El módulo %s debe estar habilitado WarningOnlyPermissionOfActivatedModules=Sólo los permisos relacionados a los módulos activados son mostrados aquí. Puedes activar otros módulos en la página Inicio->Configuración->Módulos DolibarrSetup=Instalación o actualización de Dolibarr -UploadNewTemplate=Subir nueva(s) plantilla(s) +UploadNewTemplate=Cargar plantilla(s) nuevas FormToTestFileUploadForm=Formulario para probar la carga de archivos (según la configuración) IfModuleEnabled=Nota: sí es efectivo sólo si el módulo %s está activado RemoveLock=Remover/renombrar archivo %s si existe, para permitir el uso de la herramienta Actualizar/Instalar. @@ -41,19 +43,28 @@ ErrorModuleRequireDolibarrVersion=Error, éste módulo requiere Dolibarr versió ErrorDecimalLargerThanAreForbidden=Error, una precisión superior a %s no es soportada. DictionarySetup=Configurar diccionario ErrorReservedTypeSystemSystemAuto=Los valores de tipo 'system' y 'systemauto' están reservados. Puedes usar 'user' como valor para añadir tu propio registro +DisableJavascript=Deshabilitar funciones JavaScript y Ajax +DisableJavascriptNote=Nota: Para propósito de prueba o depuración. Para optimización para una persona invidente o navegadores de texto, tu podrías preferir usar el ajuste en el perfil de usuario UseSearchToSelectCompanyTooltip=Asi mismo si tu tienes un gran número de terceras partes (> 100 000), puedes incrementar la velocidad al establecer la constante COMPANY_DONOTSEARCH_ANYWHERE to 1 en Configuración->Otro. La búsqueda entonces será limitada al inicio de la cadena. DelaiedFullListToSelectCompany=Esperar hasta que una tecla sea presionada antes de cargar contenido del listado desplegable de terceros.
Esto podria incrementar el desempeño si tu tienes un gran numero de terceros, pero no se recomienda. DelaiedFullListToSelectContact=Esperar hasta que una tecla sea presionada antes de cargar contenido del listado desplegable de contactos.
Esto podria incrementar el desempeño si tu tienes un gran numero de contactos, pero no se recomienda) +NumberOfKeyToSearch=Numero de caracteres para activar la búsqueda %s +NumberOfBytes=Numero de Octetos +SearchString=Cadena de búsqueda NotAvailableWhenAjaxDisabled=No disponible cuando Ajax está desactivado +AllowToSelectProjectFromOtherCompany=En documento de un tercero, puede seleccionar un proyecto ligado a otro tercero JavascriptDisabled=JavaScript desactivado UsePreviewTabs=Utilizar pestañas de vista previa ShowPreview=Mostrar previsualización -ThemeCurrentlyActive=Tema activo CurrentTimeZone=Zona horaria PHP (servidor) +TZHasNoEffect=Las fechas son guardadas y retornadas por el servidor de base de datos como si fueran guardadas como cadenas sometidas. La zona horaria tiene efecto solo cuando usamos la función UNIX_TIMESTAMP (que no debe ser usada por Dolibarr, ya que TZ no debe tener efecto, incluso si cambió despues de que datos fueron ingresados). Space=Espacio NextValue=Valor siguiente NextValueForInvoices=Valor siguiente (facturas) NextValueForCreditNotes=Valor siguiente (notas de crédito) +NextValueForDeposit=Valor siguiente (pago inicial) +NextValueForReplacements=Valor siguiente (sustituciones) +MustBeLowerThanPHPLimit=Nota: tu configuración PHP actualmente limita el máximo tamaño de fichero para subir a %s %s, independientemente de el valor de este parametro NoMaxSizeByPHPLimit=Nota: No hay límite establecido en la configuración de PHP MaxSizeForUploadedFiles=El tamaño máximo para los archivos subidos (0 para no permitir ninguna carga) UseCaptchaCode=Utilizar el código gráfico (CAPTCHA) en la página de inicio de sesión @@ -63,6 +74,7 @@ AntiVirusParam=Más parámetros de línea de comandos AntiVirusParamExample=Ejemplo para ClamWin: --database="C:\\Archivos de programa (x86)\\ClamWin\\lib" ComptaSetup=Establecer modulo de Contabilidad UserSetup=Establecer usuario Administrador +MultiCurrencySetup=Configurar multidivisas MenuLimits=Limites y exactitud MenuIdParent=ID del menu padre DetailMenuIdParent=ID de menú padre (vacante para un menú principal) @@ -70,16 +82,26 @@ DetailPosition=Clasificar cantidad para definir posición del menú AllMenus=Todo NotConfigured=Modulo/Aplicación no configurado SetupShort=Configuración +OtherSetup=Otra configuración CurrentValueSeparatorThousand=Separador millar +Destination=Destino +IdModule=ID del módulo +IdPermissions=ID de permisos LanguageBrowserParameter=Parámetro %s +LocalisationDolibarrParameters=Parametros de localización ClientTZ=Zona Horaria cliente (usuario) OSTZ=Servidor OS Zona Horaria PHPTZ=Servidor PHP Zona Horaria DaylingSavingTime=Hora de verano CurrentSessionTimeOut=Sesión actual pausada +YouCanEditPHPTZ=Para establecer un zona horaria PHP diferente (no necesario), puedes intentar agregar un archivo .htaccess con una linea como "SetEnv TZ Europe/Paris" +HoursOnThisPageAreOnServerTZ=Advertencia, a diferencia de otros monitores, las horas en esta página no estan en tu zona horaria local, sino en la zona horaria del servidor. +MaxNbOfLinesForBoxes=Maximo. número de lineas para dispositivos +AllWidgetsWereEnabled=Todos los dispositivos disponibles estan habilitados PositionByDefault=Pedido por defecto Position=Puesto MenusDesc=Administradores de menú establecen contenido de las dos barras de menú (horizontal y vertical) +MenusEditorDesc=El editor de menú  permite definir ingresos de menú personalizado. Usarse con cuidado para evitar inestabilidad y permanente incapacidad de ingresar al menú.
Algunos módulos agregan ingresos  (in menu  All mostly). Si tu eliminas algunos de estos ingresos por error, puedes restaurarlos desabilitando y rehabilitando el módulo. MenuForUsers=Menú para usuarios LangFile=Archivo .lang Language_en_US_es_MX_etc=Lenguaje (en_US, es_MX, ...) @@ -87,9 +109,13 @@ SystemInfo=Información del sistema SystemToolsArea=Área de herramientas del sistema SystemToolsAreaDesc=Esta área provee funciones administrativas. Usar el menú para seleccionar la característica requerida. PurgeAreaDesc=Esta página te permite eliminar todos los archivos generados o guardados por Dolibarr (archivos temporales o todos los archivos en %s el directorio). Usar esta característica no es normalmente necesario. Esta es proporcionada como una solución alternativa para usuarios cuyo Dolibarr es hospedado por un proveedor que no ofrece permisos de borrado de archivos generados por el servidor web. +PurgeDeleteLogFile=Eliminar archivos log, incluyendo %s definido por módulo Syslog (sin riesgo de perdida de datos) +PurgeDeleteTemporaryFiles=Eliminar todos los archivos temporales (sin riesgo de perdida de datos). Nota: La eliminación es hecha solo si el directorio temporal fue creado 24 horas antes. +PurgeDeleteAllFilesInDocumentsDir=Eliminar todos los archivos en el directorio: %s.
Esto borrara todos los documentos generados relacionados a elementos (terceras partes, facturas etc...), archivos subidos a el módulo ECM, volcados de respaldo de base de datos y archivos temporales. PurgeRunNow=Purgar ahora PurgeNothingToDelete=Ningún directorio o archivos que desee eliminar. PurgeNDirectoriesDeleted= %s archivos o directorios eliminados. +PurgeNDirectoriesFailed=Error al eliminar %s archivos o directorios. PurgeAuditEvents=Purgar todos los eventos de seguridad ConfirmPurgeAuditEvents=¿Está seguro de que desea eliminar todos los eventos de seguridad? Todos los registros de seguridad se eliminarán, no se eliminarán otros datos. Backup=Copia de Seguridad @@ -97,10 +123,14 @@ Restore=Restaurar RunCommandSummary=Se ha iniciado la copia de seguridad con el siguiente comando BackupResult=Resultado de copia de seguridad BackupFileSuccessfullyCreated=Archivo de copia de seguridad generado correctamente +YouCanDownloadBackupFile=Los archivos generados ahora pueden ser descargados NoBackupFileAvailable=No hay archivos de copia de seguridad disponibles. ToBuildBackupFileClickHere=Para crear un archivo de copia de seguridad, haga clic aquí . -ImportPostgreSqlDesc=Para importar un archivo de respaldo, debe usar el comando pg_restore en la linea de comandos: +ImportMySqlDesc=Para importar un archivo de respaldo de MySQL, tu podrias usar phpMyAdmin via tu proveedor de hosting o usar el comando mysql de la linea de Comandos.
Por ejemplo: +ImportPostgreSqlDesc=Para importar un archivo de respaldo, debes usar el comando pg_restore en la linea de comandos: ImportMySqlCommand=%s %s < miarchivoderespaldo.sql +ImportPostgreSqlCommand=%s %s miarchivoderespaldo.sql +FileNameToGenerate=Nombre de archivo para copia de respaldo: CommandsToDisableForeignKeysForImport=Comando para deshabilitar claves foráneas en la importación CommandsToDisableForeignKeysForImportWarning=Obligatorio si desea restaurar su copia de seguridad de SQL más tarde MySqlExportParameters=Parámetros de exportación de MySQL @@ -110,7 +140,12 @@ FullPathToPostgreSQLdumpCommand=Ruta completa del comando pg_dump AddDropDatabase=Agregar comando DROP DATABASE AddDropTable=Agregar comando DROP TABLE NameColumn=Nombre de columnas -EncodeBinariesInHexa=Convertir datos binarios en hexadecimal +EncodeBinariesInHexa=Codificar datos binarios en hexadecimal +IgnoreDuplicateRecords=Ignorar errores de registro duplicados (INSERT IGNORE) +AutoDetectLang=Autodetectar (lenguaje del navegador) +FeatureDisabledInDemo=Característica deshabilitada en versión demo +FeatureAvailableOnlyOnStable=Característica unicamente disponible en versiones oficiales estables +BoxesDesc=Widgets son componentes mostrando alguna información que tu puedes agregar para personalizar algunas páginas. Tu puedes elegir entre mostrar el widget o no al seleccionar la página objetivo y haciendo click en 'Activar', o haciendo click en la papelera de reciclaje para deshabilitarlos. OnlyActiveElementsAreShown=Solo elementos de \nmodulos habilitados son\n mostrados. ModulesDesc=Los módulos/aplicaciones determinan qué funciones están disponibles en el software. Algunos módulos requieren que se otorguen permisos a los usuarios después de activar el módulo. Haga clic en el botón de encendido/apagado (al final de la línea del módulo) para habilitar/deshabilitar un módulo/aplicación. ModulesMarketPlaceDesc=Tu puedes encontrar mas módulos para descargar en sitios web externos en el Internet @@ -131,8 +166,6 @@ DictionaryProspectStatus=Estatus del cliente potencial Upgrade=Actualizar LDAPFieldFirstName=Nombre(s) AGENDA_SHOW_LINKED_OBJECT=Mostrar objeto vinculado en la vista de agenda -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications ConfFileMustContainCustom=Instalar o construir un módulo externo desde la aplicación necesita guardar los archivos del módulo en el directorio %s . Para que este directorio sea procesado por Dolibarr, debe configurar su conf/conf.php para agregar las 2 líneas de directiva: $dolibarr_main_url_root_alt='/custom';
$dolibarr_main_document_root_alt='%s/custom'; MailToSendProposal=Propuestas de clientes MailToSendInvoice=Facturas de clientes diff --git a/htdocs/langs/es_PA/admin.lang b/htdocs/langs/es_PA/admin.lang index a4a7a82aaa0..5f6898087d4 100644 --- a/htdocs/langs/es_PA/admin.lang +++ b/htdocs/langs/es_PA/admin.lang @@ -1,5 +1,3 @@ # Dolibarr language file - Source file is en_US - admin VersionUnknown=Desconocido -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications OperationParamDesc=Define values to use for action, or how to extract values. For example:
objproperty1=SET:abc
objproperty1=SET:a value with replacement of __objproperty1__
objproperty3=SETIFEMPTY:abc
objproperty4=EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

Use a ; char as separator to extract or set several properties. diff --git a/htdocs/langs/es_PE/accountancy.lang b/htdocs/langs/es_PE/accountancy.lang index 24d7b8e4f3b..50f3ac66aa1 100644 --- a/htdocs/langs/es_PE/accountancy.lang +++ b/htdocs/langs/es_PE/accountancy.lang @@ -44,4 +44,3 @@ Sens=Significado Codejournal=Periódico FinanceJournal=Periodo Financiero TotalMarge=Margen total de ventas -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. diff --git a/htdocs/langs/es_PE/admin.lang b/htdocs/langs/es_PE/admin.lang index 0f15310bb3a..cc415c6dda9 100644 --- a/htdocs/langs/es_PE/admin.lang +++ b/htdocs/langs/es_PE/admin.lang @@ -5,6 +5,4 @@ Permission93=Eliminar impuestos e IGV DictionaryVAT=Tasa de IGV (Impuesto sobre ventas en EEUU) UnitPriceOfProduct=Precio unitario sin IGV de un producto OptionVatMode=Opción de carga de IGV -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications OperationParamDesc=Define values to use for action, or how to extract values. For example:
objproperty1=SET:abc
objproperty1=SET:a value with replacement of __objproperty1__
objproperty3=SETIFEMPTY:abc
objproperty4=EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

Use a ; char as separator to extract or set several properties. diff --git a/htdocs/langs/es_VE/admin.lang b/htdocs/langs/es_VE/admin.lang index 4daf55ade15..9d3c0f25368 100644 --- a/htdocs/langs/es_VE/admin.lang +++ b/htdocs/langs/es_VE/admin.lang @@ -32,6 +32,4 @@ WatermarkOnDraftSupplierProposal=Marca de agua en solicitudes de precios a prove LDAPMemberObjectClassListExample=Lista de ObjectClass que definen los atributos de un registro (ej: top,inetOrgPerson o top,user for active directory) LDAPUserObjectClassListExample=Lista de ObjectClass que definen los atributos de un registro (ej: top,inetOrgPerson o top,user for active directory) LDAPContactObjectClassListExample=Lista de objectClass que definen los atributos de un registro (ej: top,inetOrgPerson o top,user for active directory) -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications OperationParamDesc=Define values to use for action, or how to extract values. For example:
objproperty1=SET:abc
objproperty1=SET:a value with replacement of __objproperty1__
objproperty3=SETIFEMPTY:abc
objproperty4=EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

Use a ; char as separator to extract or set several properties. diff --git a/htdocs/langs/et_EE/accountancy.lang b/htdocs/langs/et_EE/accountancy.lang index 69bb680becb..25f67e0e93d 100644 --- a/htdocs/langs/et_EE/accountancy.lang +++ b/htdocs/langs/et_EE/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Loomus +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Müügid AccountingJournalType3=Ostud @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/et_EE/admin.lang b/htdocs/langs/et_EE/admin.lang index bb4631de3fe..b9def779562 100644 --- a/htdocs/langs/et_EE/admin.lang +++ b/htdocs/langs/et_EE/admin.lang @@ -574,7 +574,7 @@ Module510Name=Palgad Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Teated +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Täiendavad atribuudid (orders e tellimused) ExtraFieldsSupplierInvoices=Täiendavad atribuudid (invoices e arved) ExtraFieldsProject=Täiendavad atribuudid (projects e projektid) ExtraFieldsProjectTask=Täiendavad atribuudid (tasks e ülesanded) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Atribuudil %s on vale väärtus. AlphaNumOnlyLowerCharsAndNoSpace=ainult tühikuteta väikesed tähed ja numbrid SendmailOptionNotComplete=Hoiatus: mõnedel Linuxi süsteemidel peab e-kirja saatmiseks sendmaili käivitamise seadistus sisaldama võtit -ba (php.ini failis parameeter mail.force_extra_parameters). Kui mõned adressaadid ei saa kunagi kirju kätte, siis proovi parameetri väärtust mail.force_extra_parameters = -ba @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Sessiooni andmehoidla krüpteeritud Suhosini poolt ConditionIsCurrently=Olek on hetkel %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Otsingu optimeerimine -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug on laetud. -XCacheInstalled=XCache on laetud. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/et_EE/bills.lang b/htdocs/langs/et_EE/bills.lang index e7d4083a6a7..746bfe32149 100644 --- a/htdocs/langs/et_EE/bills.lang +++ b/htdocs/langs/et_EE/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Makse on suurem, kui makstava summa jääk HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Liigita 'Makstud' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Liigita 'Osaliselt makstud' ClassifyCanceled=Liigita 'Hüljatud' ClassifyClosed=Liigita 'Suletud' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Näita asendusarvet ShowInvoiceAvoir=Näita kreeditarvet ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Näita makset AlreadyPaid=Juba makstud AlreadyPaidBack=Juba tagasi makstud diff --git a/htdocs/langs/et_EE/errors.lang b/htdocs/langs/et_EE/errors.lang index 886c3e18f8a..f307abe2390 100644 --- a/htdocs/langs/et_EE/errors.lang +++ b/htdocs/langs/et_EE/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField="%s" väljal ei ole erisümbolid lubatud ErrorNumRefModel=Andmebaasi viide on juba olemas (%s) ja ei ole kooskõlas antud numeratsiooni reegliga. Kustuta kirje või nimeta viide ümber antud mooduli aktiveerimiseks. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Maski viga ErrorBadMaskFailedToLocatePosOfSequence=Viga: mask on järjekorranumbrita ErrorBadMaskBadRazMonth=Viga: halb lähteväärtus @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/et_EE/main.lang b/htdocs/langs/et_EE/main.lang index 045be9f36b2..426c182d98f 100644 --- a/htdocs/langs/et_EE/main.lang +++ b/htdocs/langs/et_EE/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Selle kolmanda isikuga seotud kontaktid/aadressid AddressesForCompany=Selle kolmanda isikuga seotud aadressid ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Selle liikmega seotud tegevused ActionsOnProduct=Events about this product NActionsLate=%s hiljaks jäänud @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Loo mustand SetToDraft=Tagasi mustandiks ClickToEdit=Klõpsa muutmiseks diff --git a/htdocs/langs/et_EE/products.lang b/htdocs/langs/et_EE/products.lang index d488dbb1fea..e886aa2d56e 100644 --- a/htdocs/langs/et_EE/products.lang +++ b/htdocs/langs/et_EE/products.lang @@ -2,6 +2,7 @@ ProductRef=Toote viide ProductLabel=Toote nimi ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Toodete/teenuste kaart diff --git a/htdocs/langs/et_EE/stripe.lang b/htdocs/langs/et_EE/stripe.lang index 0f080da0b2b..229e5a475d1 100644 --- a/htdocs/langs/et_EE/stripe.lang +++ b/htdocs/langs/et_EE/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/et_EE/withdrawals.lang b/htdocs/langs/et_EE/withdrawals.lang index 529e07d3ffe..66b4596dafd 100644 --- a/htdocs/langs/et_EE/withdrawals.lang +++ b/htdocs/langs/et_EE/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Väljamaksete fail SetToStatusSent=Märgi staatuseks 'Fail saadetud' ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/eu_ES/accountancy.lang b/htdocs/langs/eu_ES/accountancy.lang index 758d9c340a5..1fc3b3e05ec 100644 --- a/htdocs/langs/eu_ES/accountancy.lang +++ b/htdocs/langs/eu_ES/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/eu_ES/admin.lang b/htdocs/langs/eu_ES/admin.lang index 0fdb64717fc..d6df49511a8 100644 --- a/htdocs/langs/eu_ES/admin.lang +++ b/htdocs/langs/eu_ES/admin.lang @@ -574,7 +574,7 @@ Module510Name=Soldatak Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Jakinarazpenak +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/eu_ES/bills.lang b/htdocs/langs/eu_ES/bills.lang index a90736a569d..a1f161e4119 100644 --- a/htdocs/langs/eu_ES/bills.lang +++ b/htdocs/langs/eu_ES/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Ordainketa erakutsi AlreadyPaid=Jada ordainduta AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/eu_ES/errors.lang b/htdocs/langs/eu_ES/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/eu_ES/errors.lang +++ b/htdocs/langs/eu_ES/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/eu_ES/main.lang b/htdocs/langs/eu_ES/main.lang index 3961eb46b5a..330e60e0320 100644 --- a/htdocs/langs/eu_ES/main.lang +++ b/htdocs/langs/eu_ES/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/eu_ES/products.lang b/htdocs/langs/eu_ES/products.lang index ed5d9ec76b6..1932b64a657 100644 --- a/htdocs/langs/eu_ES/products.lang +++ b/htdocs/langs/eu_ES/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/eu_ES/stripe.lang b/htdocs/langs/eu_ES/stripe.lang index 6186c14a9ec..746931ff967 100644 --- a/htdocs/langs/eu_ES/stripe.lang +++ b/htdocs/langs/eu_ES/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/eu_ES/withdrawals.lang b/htdocs/langs/eu_ES/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/eu_ES/withdrawals.lang +++ b/htdocs/langs/eu_ES/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/fa_IR/accountancy.lang b/htdocs/langs/fa_IR/accountancy.lang index 5b8e93fda67..67a705dbedd 100644 --- a/htdocs/langs/fa_IR/accountancy.lang +++ b/htdocs/langs/fa_IR/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=دفترهای حساب‌داری AccountingJournal=دفتر حساب‌داری NewAccountingJournal=دفتر حساب‌داری جدید ShowAccoutingJournal=نمایش دفتر حساب‌داری -Nature=طبیعت +NatureOfJournal=Nature of Journal AccountingJournalType1=فعالیت‌های متفرقه AccountingJournalType2=فروش AccountingJournalType3=خرید @@ -291,6 +291,7 @@ Modelcsv_quadratus=صدور برای Quadratus QuadraCompta Modelcsv_ebp=صدور برای EBP Modelcsv_cogilog=صدور برای Cogilog Modelcsv_agiris=صدور برای Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=صادرکردن برای OpenConcerto  (آزمایشی) Modelcsv_configurable= صدور قابل پیکربندی CSV Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=ساختار شناسۀ حساب‌‌ها InitAccountancy=حساب‌داری اولیه InitAccountancyDesc=این صفحه برای مقداردهی اولیۀ یک حساب حساب‌داری برای محصولات/خدماتی قابل استفاده است که حساب حساب‌داری تعریف‌شده‌ای برای خرید و فروش ندارند DefaultBindingDesc=این صفحه برای تنظیم یک حساب پیش‌فرض قابل استفاده از که برای وصل کردن ردیف تراکنش‌‌های مربوط به پرداخت حقوق، اعانه و کمک، مالیات و مالیت بر ارزش افزوده در حالتی که هیچ حساب حساب‌داری تنظیم نشده، قابل استفاده است . -DefaultClosureDesc=این صفحه برای تنظیم مؤلفه‌هائی برای پیوست کردن یک برگۀ تعدیل لازم است. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=گزینه‌ها OptionModeProductSell=حالت فروش OptionModeProductSellIntra=حالت فروش به شکل EEC صادر می‌گردد diff --git a/htdocs/langs/fa_IR/admin.lang b/htdocs/langs/fa_IR/admin.lang index a142ce5e7c8..2b995dda00f 100644 --- a/htdocs/langs/fa_IR/admin.lang +++ b/htdocs/langs/fa_IR/admin.lang @@ -574,7 +574,7 @@ Module510Name=حقوق Module510Desc=ثبت و پیگیری پرداخت‌های کارمندان Module520Name=وام‌ها Module520Desc=مدیریت وام‌ها -Module600Name=اطلاعیه‌ها +Module600Name=Notifications on business event Module600Desc=ارسال رایانامه‌های اطلاعیه مبتنی بر یک رخداد کاری: بر اساس کاربر (تنظیمات بر حسب هر کاربر)، بر اساس طرف‌سوم (تنظیمات بر اساس هر طرف سوم) یا بر اساس رایانامه‌های خاص Module600Long=به خاطر داشته باشید این واحد رایانامه‌را به صورت بلادرنگ در هنگام یک رخداد معین ارسال می‌نماید. در صورتی که به دنبال یک قابلیت برای ارسال یادآورنده‌های رخدادهائی مثل جلسات باشید، به واحد تنظیمات جلسات مراجعه کنید. Module610Name=انواع محصولات @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=ویژگی‌های تکمیلی (سفارش‌ها) ExtraFieldsSupplierInvoices=ویژگی‌های تکمیلی (صورت‌حساب‌ها) ExtraFieldsProject=ویژگی‌های تکمیلی (طرح‌ها) ExtraFieldsProjectTask=ویژگی‌های تکمیلی (وظایف) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=ویژگی %s مقدار نادرستی دارد. AlphaNumOnlyLowerCharsAndNoSpace=فقط حروف کوچک و اعداد انگلیسی بدون فاصله SendmailOptionNotComplete=هشدار، در برخی سامانه‌های لینوکس، برای ارسال رایانامه از شما، تنظیمات اجرای sendmail نیازمند گزینۀ -ba (در فایل php.ini ، مقدار mail.force_extra_parameters) است. در صورتی که برخی گیرندگان، هرگز رایانامه دریافت نکرده‌اند، این مؤلفۀ PHP را بدین شکل تغییر دهید: mail.force_extra_parameters = -ba ). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=ذخیره‌سازی نشست کدبندی‌شدۀ Suhos ConditionIsCurrently=در حال حاضر وضعیت %s است YouUseBestDriver=شما از راه‌انداز %s استفاده می‌کنید که بهترین راه‌انداز دردسترس نیست. YouDoNotUseBestDriver=شما از راه‌انداز %s استفاده می‌کنید اما پیشنهاد ما استفادهاز %s است. -NbOfProductIsLowerThanNoPb=در پایگاه داده شما فقط %s محصول/خدمات دارید. این دیگر نیاز به بهینه‌سازی خاصی ندارد. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=بهینه‌سازی جستجو -YouHaveXProductUseSearchOptim=شما %s محصول در پایگاه داده دارید و نیاز است مقدار ثابت PRODUCT_DONOTSEARCH_ANYWHERE را در خانه-برپاسازی-سایر به عدد 1 تغییر دهید. محدود کردن جستجو به ابتدای عبارت که به پایگاه داده امکان می‌دهد تا از شاخص‌ها استفاه نماید تا شما نتیجه‌را فوری دریافت نمائید. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=شما از مرورگر وب %s استفاده می‌نمائید. این مرورگر برای کارائی و امنیت مناسب است. BrowserIsKO=شما از مرورگر وب %s استفاده می‌نمائید. این مرورگر به‌عنوان یک انتخاب بد به نسبت امنیت، کارائی و اعتمادپذیری شناخته شده است. ما به شما پیشنهاد می‌کنیم از Firefox، Chrome، Opera و Safari استفاده نمائید. -XDebugInstalled=XDebug بارگذاری شده است. -XCacheInstalled=XCache بارگذاری شده است. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=نمایش فهرست اطلاعات مرجع -ref. فروشنده/مشتری (فهرست انتخابی یا ترکیبی) و اکثر ابَرپیوند.
نام طرف‌های سوم به شکل " CC12345 - SC45678 - شرکت بزرگ سازمانی " به جای "شرکت بزرگ سازمانی" نمایش داده خواهد شد. AddAdressInList=نمایش فهرست اطلاعات نشانی‌های فروشنده/مشتری (فهرست انتخابی یا ترکیبی)
شخص سوم‌ها به شکل "شرکت بزرگ سازمانی - شمارۀ 21 خیابان 123456 شهر بزرگ ایران" به جای "شرکت بزرگ سازمانی" نمایش داده خواهند شد. AskForPreferredShippingMethod=پرسش برای روش ارسال ترجیحی برای اشخاص سوم @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=برپاسازی واحد گزارش هزینه‌ها ExpenseReportNumberingModules=واحد شماره‌گذاری گزارش هزینه‌ها NoModueToManageStockIncrease=هیچ واحدی که قادر به افزایش خودکار موجودی انبار باشد فعال نشده است. افزایش موجودی انبار تنها به صورت دستی انجام خواهد شد. YouMayFindNotificationsFeaturesIntoModuleNotification=شما می‌توانید برخی گزینه‌های مربوط به اطلاع‌رسانی از رایانامه را با فعال کردن و تنظیم واحد "آگاهی‌رسانی" تنظیم نمائید. -ListOfNotificationsPerUser=فهرست آگاهی‌رسانی‌ها برحسب کاربر* -ListOfNotificationsPerUserOrContact=فهرست آگاهی‌رسانی‌ها (رخدادها) ی موجود بر حسب کاربر * یا بر حسب طرف‌تماس** -ListOfFixedNotifications=فهرست آگاهی‌رسانی‌های ثابت +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=به زبانۀ "آگاهی‌رسانی" یک کاربر رفته تا آگاهی‌رسانی‌های مربوط به کاربران را اضافه یا حذف نمائید GoOntoContactCardToAddMore=به زبانۀ "آگاهی رسانی" یک طرف‌سوم رفته تا آگاهی‌رسانی‌های مربوط به یک طرف تماس/نشانی‌ها را اضافه یا حذف نمائید Threshold=آستانه @@ -1898,6 +1900,11 @@ OnMobileOnly=تنها روی صفحات کوچک (تلفن‌هوشمند) DisableProspectCustomerType=غیرفعال کردن نوع طرف سوم "مشتری احتمالی + مشتری" (بنابراین شخص‌سوم باید یک مشتری احتمالی یا یک مشتری باشد و نمی‌تواند هر دو با هم باشد) MAIN_OPTIMIZEFORTEXTBROWSER=ساده‌کردن رابط‌کاربری برای افراد نابینا MAIN_OPTIMIZEFORTEXTBROWSERDesc=این گزینه برای افراد نابینتا استفاده می‌شود یا این‌که از برنامه از یک مرورگر نوشتاری همانند Lynx یا Links استفاده می‌نمائید. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=این مقدار می‌تواند توسط هر کاربر از صفحۀ کاربری مربوطه و زبانۀ '%s' مورد بازنویسی قرار گیرد DefaultCustomerType=نوع پیش‌فرض شخص‌سوم در برگۀ ساخت "مشتری جدید" ABankAccountMustBeDefinedOnPaymentModeSetup=توجه: برای این‌که این قابلیت کار کند، حساب بانکی باید در تنظیمات هر واحد مربوط به پرداخت تعریف شود (Paypal، Stripe و غیره) @@ -1911,7 +1918,7 @@ LogsLinesNumber=تعداد سطور نمایش داده شده در زبانۀ UseDebugBar=استفاده از نوار اشکال‌یابی DEBUGBAR_LOGS_LINES_NUMBER=تعداد آخرین سطور گزارش‌کار برای حفظ در کنسول WarningValueHigherSlowsDramaticalyOutput=هشدار! مقادیر بزرگ خروجی را به‌شدت کند می‌کند -DebugBarModuleActivated=واحد نوار اشکال‌یابی فعال شده و رابط کاربری را به شدت کند می‌کند +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=اشکال صادارات با همگان به اشتراک گذاشته شدند ExportSetup=برپاسازی واحد صادرات InstanceUniqueID=شناسۀ منحصر به‌فرد نمونه @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=شما آن را بر حساب IFTTT خود پی EndPointFor=نقطۀ آخر برای %s : %s DeleteEmailCollector=حذف جمع‌آورندۀ رایانامه ConfirmDeleteEmailCollector=آیا مطمئن هستید می‌خواهید این جمع‌آورندۀ رایانامه را حذف کنید؟ +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/fa_IR/bills.lang b/htdocs/langs/fa_IR/bills.lang index 42ecb831c69..04c90025c64 100644 --- a/htdocs/langs/fa_IR/bills.lang +++ b/htdocs/langs/fa_IR/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=پرداخت بیشتر از یادآوری بر HelpPaymentHigherThanReminderToPay=توجه! مبلغ پرداخت یک یا چند صورت‌حساب پرداختی بیش از مبلغ قابل پرداخت است.
ورودی خود را ویرایش نمائید، در غیر این‌صورت ساخت یک یادداشت اعتباری را برای مبلغ اضافی دریافت شده برای هر صورت‌حساب را بررسی و تائید کنید. HelpPaymentHigherThanReminderToPaySupplier=توجه! مبلغ پرداخت یک یا چند صورت‌حساب پرداختی بیش از مبلغ قابل پرداخت است.
ورودی خود را ویرایش نمائید، در غیر این‌صورت ساخت یک یادداشت اعتباری را برای مبلغ اضافی پرداخت شده برای هر صورت‌حساب را بررسی و تائید کنید. ClassifyPaid=طبقه‌بندی "پرداخت شده" +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=طبقه‌بندی "پرداخت ناقص " ClassifyCanceled=طبقه‌بندی "معلق" ClassifyClosed=طبقه‌بندی "بسته شده" @@ -214,6 +215,20 @@ ShowInvoiceReplace=نمایش صورت‌حساب جایگزین ShowInvoiceAvoir=نمایش یادداشت اعتباری ShowInvoiceDeposit=نمایش صورت‌حساب پیش‌پرداخت ShowInvoiceSituation=نمایش صورت‌حساب وضعیت +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=نمایش پرداخت AlreadyPaid=قبلا پرداخت‌شده است AlreadyPaidBack=مبلغ قبلا بازگردانده شده است diff --git a/htdocs/langs/fa_IR/errors.lang b/htdocs/langs/fa_IR/errors.lang index dd314e4657f..b93c42f3fd8 100644 --- a/htdocs/langs/fa_IR/errors.lang +++ b/htdocs/langs/fa_IR/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=نویسه‌های خاص در بخش "%s" ErrorNumRefModel=در پایگاه‌داده ( %s ) یک ارجاع وجود دارد و با این قواعد شماره‌دهی همخوان نیست. ردیف مربوطه را حذف کرده یا ارجاع را تغییرنام دهید تا این واحد فعال شود ErrorQtyTooLowForThisSupplier=تعداد برای این فروشنده بیش‌ازحد پائین است یا این‌که برای این محصول مبلغی در خصوص این فروشنده تعریف نشده است ErrorOrdersNotCreatedQtyTooLow=برخی از سفارش‌ها ساخته نشدند چون تعداد‌ها کم‌تر از حد مطلوب بود -ErrorModuleSetupNotComplete=برپاسازی این واحد ناقص به نظر می‌رسد. به بخش خانه - برپاسازی - واحدها رفته تا تکمیل کنید +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=خطا در ماسک ErrorBadMaskFailedToLocatePosOfSequence=خطا، ماسک بدون عدد متوالی ErrorBadMaskBadRazMonth=خطا، مقدار نادرست بازنشانی @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=نشانی اینترنتی %s باید با http://  ErrorNewRefIsAlreadyUsed=خطا، ارجاع جدید قبلا استفاده شده است ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=یک گذرواژه برای این عضو تنظیم شده است. با این‌حال هیچ حساب کاربری‌ای ساخته نشده است. بنابراین این گذرواژه برای ورود به Dolibarr قابل استفاده نیست. ممکن است برای یک رابط/واحد بیرونی قابل استفاده باشد، اما اگر شما نخواهید هیچ نام کاربری ورود و گذرواژه‌ای برای یک عضو استفاده کنید، شما می‌توانید گزینۀ "ایجاد یک نام‌ورد برای هر عضو" را از برپاسازی واحد اعضاء غیرفعال کنید. در صورتی که نیاز دارید که نام‌ورود داشته باشید اما گذرواژه نداشته باشید، می‌توانید این بخش را خالی گذاشته تا از این هشدار بر حذر باشید. نکته: همچنین نشانی رایانامه می‌تواند در صورتی که عضو به یک‌کاربر متصل باشد، می‌‌تواند مورد استفاده قرار گیرد WarningMandatorySetupNotComplete=این گزینه را برای برپاسازی مؤلفه‌های الزامی کلیک کنید WarningEnableYourModulesApplications=این گزینه را برای فعال کردن واحدها و برنامه‌های مختلف کلیک کنید diff --git a/htdocs/langs/fa_IR/main.lang b/htdocs/langs/fa_IR/main.lang index e5d0d766ec5..e9c00db19c4 100644 --- a/htdocs/langs/fa_IR/main.lang +++ b/htdocs/langs/fa_IR/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=طرف‌های‌تماس/نشانی‌های ای AddressesForCompany=نشانی‌های این شخص‌سوم ActionsOnCompany=روی‌دادهای مربوط به این شخص سوم ActionsOnContact=روی‌دادهای مربوط به این طرف‌تماس/نشانی +ActionsOnContract=Events for this contract ActionsOnMember=روی‌دادهای مربوط به این عضو ActionsOnProduct=روی‌دادهای مربوط به این محصول NActionsLate=%s دیرتر @@ -759,6 +760,7 @@ LinkToSupplierProposal=پیوند به پیشنهاد فروشنده LinkToSupplierInvoice=پیوند به صورت‌حساب فروشنده LinkToContract=پیوند به قرارداد LinkToIntervention=پیوند به واسطه‌گری +LinkToTicket=Link to ticket CreateDraft=ساخت پیش‌نویس SetToDraft=بازگشت به پیش‌نویس ClickToEdit=کلیک برای ویرایش diff --git a/htdocs/langs/fa_IR/products.lang b/htdocs/langs/fa_IR/products.lang index 9dd30c1eec9..c6ef6261d7b 100644 --- a/htdocs/langs/fa_IR/products.lang +++ b/htdocs/langs/fa_IR/products.lang @@ -2,6 +2,7 @@ ProductRef=ارجاع محصول ProductLabel=برچسب محصول ProductLabelTranslated=برچسب ترجمه‌شدۀ محصول +ProductDescription=Product description ProductDescriptionTranslated=توضیحات ترجمه‌شدۀ محصول ProductNoteTranslated=یادداشت ترجمه‌شدۀ محصول ProductServiceCard=کارت محصولات/خدمات diff --git a/htdocs/langs/fa_IR/stripe.lang b/htdocs/langs/fa_IR/stripe.lang index 767799961bc..37f1d42fb57 100644 --- a/htdocs/langs/fa_IR/stripe.lang +++ b/htdocs/langs/fa_IR/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/fa_IR/withdrawals.lang b/htdocs/langs/fa_IR/withdrawals.lang index 097d8c7ddf7..c64b0dd3fba 100644 --- a/htdocs/langs/fa_IR/withdrawals.lang +++ b/htdocs/langs/fa_IR/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=فایل برداشت SetToStatusSent=تنظیم به وضعیت "فایل ارسال شد" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/fi_FI/accountancy.lang b/htdocs/langs/fi_FI/accountancy.lang index 96ae44884fd..3c32acbda77 100644 --- a/htdocs/langs/fi_FI/accountancy.lang +++ b/htdocs/langs/fi_FI/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Kirjanpitotilityypit AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Luonto +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Myynti AccountingJournalType3=Ostot @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/fi_FI/admin.lang b/htdocs/langs/fi_FI/admin.lang index bcf1f3161f8..636b3f07ac7 100644 --- a/htdocs/langs/fi_FI/admin.lang +++ b/htdocs/langs/fi_FI/admin.lang @@ -574,7 +574,7 @@ Module510Name=Palkat Module510Desc=Record and track employee payments Module520Name=Lainat Module520Desc=Lainojen hallinnointi -Module600Name=Ilmoitukset +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Varoitus, joissakin Linux-järjestelmissä, lähettää sähköpostia sähköpostisi, sendmail toteuttaminen setup on conatins optio-ba (parametri mail.force_extra_parameters tulee php.ini tiedosto). Jos jotkut vastaanottajat eivät koskaan vastaanottaa sähköposteja, yrittää muokata tätä PHP parametrin mail.force_extra_parameters =-ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Hakuoptimointi -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug ladattu -XCacheInstalled=XCache ladattu +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/fi_FI/bills.lang b/htdocs/langs/fi_FI/bills.lang index 3528ca862ab..6a0a6bdbac9 100644 --- a/htdocs/langs/fi_FI/bills.lang +++ b/htdocs/langs/fi_FI/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Maksu korkeampi kuin muistutus maksaa HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Luokittele "Maksettu" +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Luokittele "Osittain maksettu" ClassifyCanceled=Luokittele "Hylätty" ClassifyClosed=Luokittele "Suljettu" @@ -214,6 +215,20 @@ ShowInvoiceReplace=Näytä korvaa lasku ShowInvoiceAvoir=Näytä menoilmoitus ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Näytä tilannetilasku +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Näytä maksu AlreadyPaid=Jo maksanut AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/fi_FI/errors.lang b/htdocs/langs/fi_FI/errors.lang index 3806c084457..326aa5f7cc2 100644 --- a/htdocs/langs/fi_FI/errors.lang +++ b/htdocs/langs/fi_FI/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Erikoismerkkejä ei sallita kentän "%s" ErrorNumRefModel=Viittaus olemassa otetaan tietokantaan (%s) ja ei ole yhteensopiva tämän numeroinnin sääntöä. Poista levy tai nimen viittaus aktivoida tämän moduulin. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Virhe naamio ErrorBadMaskFailedToLocatePosOfSequence=Virhe, maski ilman järjestysnumeroa ErrorBadMaskBadRazMonth=Virhe, huono palautus arvo @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/fi_FI/main.lang b/htdocs/langs/fi_FI/main.lang index 48580ad7667..6667c78b2ab 100644 --- a/htdocs/langs/fi_FI/main.lang +++ b/htdocs/langs/fi_FI/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Sidosryhmien kontaktit/osoitteet AddressesForCompany=Sidosryhmien osoitteet ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Jäsenen tapahtumat ActionsOnProduct=Tapahtumat tästä tuotteesta NActionsLate=%s myöhässä @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Linkki Sopimuksiin LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Luo luonnos SetToDraft=Palaa luonnokseen ClickToEdit=Klikkaa muokataksesi diff --git a/htdocs/langs/fi_FI/products.lang b/htdocs/langs/fi_FI/products.lang index d8c06ce88b4..b7b9c98dde6 100644 --- a/htdocs/langs/fi_FI/products.lang +++ b/htdocs/langs/fi_FI/products.lang @@ -2,6 +2,7 @@ ProductRef=Tuote nro. ProductLabel=Tuotenimike ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Tuotteet / Palvelut kortti diff --git a/htdocs/langs/fi_FI/stripe.lang b/htdocs/langs/fi_FI/stripe.lang index 4418dc1f5e8..d3845bed9e3 100644 --- a/htdocs/langs/fi_FI/stripe.lang +++ b/htdocs/langs/fi_FI/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/fi_FI/withdrawals.lang b/htdocs/langs/fi_FI/withdrawals.lang index 1c301fffe55..1819f200b56 100644 --- a/htdocs/langs/fi_FI/withdrawals.lang +++ b/htdocs/langs/fi_FI/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/fr_BE/accountancy.lang b/htdocs/langs/fr_BE/accountancy.lang index 30535d01188..1071dd5c68b 100644 --- a/htdocs/langs/fr_BE/accountancy.lang +++ b/htdocs/langs/fr_BE/accountancy.lang @@ -7,4 +7,3 @@ ErrorDebitCredit=Débit et crédit ne peuvent pas être non-nuls en même temps TotalMarge=Marge de ventes totale Selectmodelcsv=Sélectionnez un modèle d'export Modelcsv_normal=Export classique -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. diff --git a/htdocs/langs/fr_BE/admin.lang b/htdocs/langs/fr_BE/admin.lang index 3090455190b..7d99260c310 100644 --- a/htdocs/langs/fr_BE/admin.lang +++ b/htdocs/langs/fr_BE/admin.lang @@ -16,7 +16,9 @@ FormToTestFileUploadForm=Formulaire pour tester l'upload de fichiers (selon la c IfModuleEnabled=Note: oui ne fonctionne que si le module %s est activé Module20Name=Propales Module30Name=Factures +Module600Name=Notifications on business event Target=Objectif -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications OperationParamDesc=Define values to use for action, or how to extract values. For example:
objproperty1=SET:abc
objproperty1=SET:a value with replacement of __objproperty1__
objproperty3=SETIFEMPTY:abc
objproperty4=EXTRACT:HEADER:X-Myheaderkey.*[^\\s]+(.*)
options_myextrafield=EXTRACT:SUBJECT:([^\\s]*)
object.objproperty5=EXTRACT:BODY:My company name is\\s([^\\s]*)

Use a ; char as separator to extract or set several properties. diff --git a/htdocs/langs/fr_BE/withdrawals.lang b/htdocs/langs/fr_BE/withdrawals.lang index eb336cadcc0..305bdf13d8e 100644 --- a/htdocs/langs/fr_BE/withdrawals.lang +++ b/htdocs/langs/fr_BE/withdrawals.lang @@ -1,2 +1,3 @@ # Dolibarr language file - Source file is en_US - withdrawals StatusTrans=Envoyé +RUM=Unique Mandate Reference (UMR) diff --git a/htdocs/langs/fr_CA/accountancy.lang b/htdocs/langs/fr_CA/accountancy.lang index f7069e0d730..b509e180e22 100644 --- a/htdocs/langs/fr_CA/accountancy.lang +++ b/htdocs/langs/fr_CA/accountancy.lang @@ -102,7 +102,6 @@ ErrorAccountingJournalIsAlreadyUse=Ce journal est déjà utilisé ChartofaccountsId=Carte comptable Id InitAccountancy=Compabilité initiale DefaultBindingDesc=Cette page peut être utilisée pour définir un compte par défaut à utiliser pour lier l'historique des transactions sur les salaires de paiement, le don, les taxes et la TVA lorsque aucun compte comptable spécifique n'a été défini. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. OptionModeProductSell=Mode de ventes OptionModeProductBuy=Mode d'achats OptionModeProductSellDesc=Afficher tous les produits avec compte comptable pour les ventes. diff --git a/htdocs/langs/fr_CA/admin.lang b/htdocs/langs/fr_CA/admin.lang index fa8441ff760..69ce614e588 100644 --- a/htdocs/langs/fr_CA/admin.lang +++ b/htdocs/langs/fr_CA/admin.lang @@ -89,6 +89,7 @@ WatermarkOnDraftExpenseReports=Filigrane sur les projets de rapports de dépense Module0Desc=Gestion des utilisateurs / employés et des groupes Module42Desc=Installations de journalisation (fichier, syslog, ...). Ces journaux sont à des fins techniques / de débogage. Module75Name=Notes de frais et déplacements +Module600Name=Notifications on business event Module2400Name=Evénements / Agenda Module2600Name=services API / Web ( serveur SOAP ) Module2600Desc=Active le serveur de Web Services de Dolibarr @@ -198,9 +199,9 @@ DeleteFiscalYear=Supprimer la période comptable ConfirmDeleteFiscalYear=Êtes-vous sûr de supprimer cette période comptable? ShowFiscalYear=Afficher la période comptable SalariesSetup=Configuration du module salariés -ListOfNotificationsPerUser=Liste des notifications par utilisateur * -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications ConfFileMustContainCustom=L'installation ou la construction d'un module externe à partir de l'application doit sauvegarder les fichiers du module dans le répertoire %s. Pour que ce répertoire soit traité par Dolibarr, vous devez configurer votre conf / conf.php pour ajouter les 2 lignes de directive:
$ dolibarr_main_url_root_alt = '/ custom';
$ dolibarr_main_document_root_alt = '%s / custom'; HighlightLinesOnMouseHover=Mettez en surbrillance les lignes de table lorsque déplacement de la souris passe au-dessus PressF5AfterChangingThis=Appuyez sur CTRL + F5 sur le clavier ou effacez votre cache de navigateur après avoir changé cette valeur pour l'avoir efficace diff --git a/htdocs/langs/fr_CA/errors.lang b/htdocs/langs/fr_CA/errors.lang index 3f76316e170..967bf583d1c 100644 --- a/htdocs/langs/fr_CA/errors.lang +++ b/htdocs/langs/fr_CA/errors.lang @@ -57,7 +57,6 @@ ErrorPasswordsMustMatch=Les deux mots de passe dactylographiés doivent correspo ErrorFileIsInfectedWithAVirus=Le programme antivirus n'a pas pu valider le fichier (le fichier peut être infecté par un virus) ErrorSpecialCharNotAllowedForField=Les caractères spéciaux ne sont pas autorisés pour le champ "%s" ErrorNumRefModel=Une référence existe dans la base de données (%s) et n'est pas compatible avec cette règle de numérotation. Supprimez l'enregistrement ou la renommée référence pour activer ce module. -ErrorModuleSetupNotComplete=La configuration du module semble être inachevée. Allez sur Accueil - Configuration - Modules à compléter. ErrorBadMaskBadRazMonth=Erreur, mauvaise valeur de réinitialisation ErrorCounterMustHaveMoreThan3Digits=Le compteur doit avoir plus de 3 chiffres ErrorProdIdAlreadyExist=%s est affecté à un autre tiers diff --git a/htdocs/langs/fr_CA/withdrawals.lang b/htdocs/langs/fr_CA/withdrawals.lang index 722d0dc02df..d8dc0f4bd1a 100644 --- a/htdocs/langs/fr_CA/withdrawals.lang +++ b/htdocs/langs/fr_CA/withdrawals.lang @@ -11,17 +11,16 @@ WithdrawalsLines=Lignes de commande de débit direct RequestStandingOrderToTreat=Demande d'ordonnance de paiement de débit direct à traiter RequestStandingOrderTreated=Demande d'ordonnance de paiement par prélèvement automatique traitée NotPossibleForThisStatusOfWithdrawReceiptORLine=Pas encore possible. L'état de retrait doit être défini sur 'crédité' avant de déclarer le rejet sur des lignes spécifiques. -NbOfInvoiceToWithdrawWithInfo=Nb. De la facture du client avec des ordres de paiement de débit direct ayant des informations définies sur le compte bancaire InvoiceWaitingWithdraw=Facture en attente de débit direct AmountToWithdraw=Montant à retirer WithdrawsRefused=Débit direct refusé NoInvoiceToWithdraw=Aucune facture de client avec Open 'Demandes de débit direct' est en attente. Allez sur l'onglet '%s' sur la carte de facture pour faire une demande. +WithdrawalsSetup=Configuration du paiement par débit direct WithdrawStatistics=Statistiques de paiement par débit direct WithdrawRejectStatistics=Statistiques de rejet de paiement par débit direct LastWithdrawalReceipt=Derniers %s reçus de débit direct MakeWithdrawRequest=Faire une demande de paiement par prélèvement automatique WithdrawRequestsDone=%s demandes de paiement par prélèvement automatique enregistrées -ThirdPartyBankCode=Code bancaire tiers ClassCreditedConfirm=Êtes-vous sûr de vouloir classer ce reçu de retrait comme crédité sur votre compte bancaire? WithdrawalRefused=Retrait refusée WithdrawalRefusedConfirm=Êtes-vous sûr de vouloir introduire un rejet de retrait pour la société? @@ -38,7 +37,6 @@ StatusMotif0=Non spécifié StatusMotif1=Fonds insuffisants StatusMotif2=Demande contestée StatusMotif3=Aucune ordonnance de paiement par prélèvement automatique -StatusMotif4=Commande du client StatusMotif5=RIB inutilisable StatusMotif6=Compte sans solde StatusMotif8=Autre raison @@ -49,15 +47,13 @@ NotifyCredit=Crédit de retrait NumeroNationalEmetter=Numéro national de l'émetteur WithBankUsingRIB=Pour les comptes bancaires utilisant RIB WithBankUsingBANBIC=Pour les comptes bancaires utilisant IBAN / BIC / SWIFT -BankToReceiveWithdraw=Compte bancaire pour recevoir des débits directs CreditDate=Crédit sur WithdrawalFileNotCapable=Impossible de générer un fichier de retrait de retrait pour votre pays %s (Votre pays n'est pas pris en charge) -ShowWithdraw=Afficher le retrait -IfInvoiceNeedOnWithdrawPaymentWontBeClosed=Toutefois, si la facture a au moins un paiement de retrait non encore traité, elle ne sera pas définie comme payée pour permettre la gestion préalable du retrait. DoStandingOrdersBeforePayments=Cet onglet vous permet de demander une commande de paiement par prélèvement automatique. Une fois terminé, accédez au menu Banque-> Ordres de débit direct pour gérer l'ordre de paiement de débit direct. Lorsque la commande de paiement est fermée, le paiement sur facture sera automatiquement enregistré et la facture sera fermée si le solde à payer est nul. WithdrawalFile=Fichier de retrait SetToStatusSent=Définir le statut "Fichier envoyé" StatisticsByLineStatus=Statistiques par état des lignes +RUM=Unique Mandate Reference (UMR) RUMLong=Référence de mandat unique WithdrawMode=Mode de débit direct (FRST ou RECUR) WithdrawRequestAmount=Montant de la demande de débit direct: @@ -66,11 +62,9 @@ SepaMandate=Mandat de débit direct SEPA PleaseReturnMandate=Veuillez renvoyer ce formulaire de mandat par courrier électronique à %s ou par courrier à SEPALegalText=En signant ce formulaire de mandat, vous autorisez (A) %s à envoyer des instructions à votre banque pour débiter votre compte et (B) votre banque pour débiter votre compte conformément aux instructions de %s. Dans le cadre de vos droits, vous avez droit à un remboursement de votre banque selon les termes et conditions de votre contrat avec votre banque. Un remboursement doit être demandé dans les 8 semaines à partir de la date à laquelle votre compte a été débité. Vos droits concernant le mandat ci-dessus sont expliqués dans un état que vous pouvez obtenir auprès de votre banque. CreditorIdentifier=Identificateur du créancier -CreditorName=Nom du créancier SEPAFillForm=(B) Veuillez compléter tous les champs marqués * SEPAFormYourBAN=Votre nom de compte bancaire (IBAN) SEPAFormYourBIC=Votre code d'identification de banque (BIC) -ModeRECUR=Paiement récurrent ModeFRST=Paiement unique PleaseCheckOne=Veuillez cocher un seul InfoCreditSubject=Paiement de l'ordre de paiement de débit direct %s par la banque diff --git a/htdocs/langs/fr_FR/accountancy.lang b/htdocs/langs/fr_FR/accountancy.lang index de6f26337d7..0150ff7d017 100644 --- a/htdocs/langs/fr_FR/accountancy.lang +++ b/htdocs/langs/fr_FR/accountancy.lang @@ -246,7 +246,7 @@ ValidateHistory=Lier automatiquement AutomaticBindingDone=Liaison automatique faite ErrorAccountancyCodeIsAlreadyUse=Erreur, vous ne pouvez pas détruire de compte comptable car il est utilisé -MvtNotCorrectlyBalanced=Mouvement non équilibré. Débit = %s| Crébit = %s +MvtNotCorrectlyBalanced=Mouvement non équilibré. Débit = %s| Crédit = %s Balancing=Équilibrage FicheVentilation=Fiche lien GeneralLedgerIsWritten=Les transactions sont enregistrées dans le grand livre @@ -265,7 +265,7 @@ AccountingJournals=Journaux comptables AccountingJournal=Journal comptable NewAccountingJournal=Nouveau journal comptable ShowAccoutingJournal=Afficher le journal -Nature=Nature +NatureOfJournal=Nature du journal AccountingJournalType1=Opérations diverses AccountingJournalType2=Ventes AccountingJournalType3=Achats @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export vers Quadratus QuadraCompta Modelcsv_ebp=Export vers EBP Modelcsv_cogilog=Export vers Cogilog Modelcsv_agiris=Export vers Agiris +Modelcsv_LDCompta=Export pour LD Compta (v9 et supérieur) (Test) Modelcsv_openconcerto=Export pour OpenConcerto (Test) Modelcsv_configurable=Export configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Id plan comptable InitAccountancy=Initialisation comptabilité InitAccountancyDesc=Cette page peut être utilisée pour initialiser un compte comptable sur les produits et services qui ne disposent pas de compte comptable défini pour les ventes et les achats. DefaultBindingDesc=Cette page peut être utilisée pour définir un compte par défaut à utiliser pour la ventilation des transactions sur le paiement des salaires, les dons, les charges sociales et fiscales et la TVA lorsqu'aucun compte spécifique n'a été défini. -DefaultClosureDesc=Cette page peut être utilisée pour définir les paramètres pour clore un bilan. +DefaultClosureDesc=Cette page peut être utilisée pour définir les paramètres pour une cloture comptable. Options=Options OptionModeProductSell=Mode ventes OptionModeProductSellIntra=Mode ventes exportées dans la CEE diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang index 3276f9c1312..ea029762214 100644 --- a/htdocs/langs/fr_FR/admin.lang +++ b/htdocs/langs/fr_FR/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaires Module510Desc=Enregistrer et suivre le paiement des salaires des employés Module520Name=Emprunts Module520Desc=Gestion des emprunts -Module600Name=Notifications +Module600Name=Notifications sur les évênements métiers Module600Desc=Envoi de notifications par e-mails déclenchées par des événements métiers: par utilisateur (configuration faite sur chaque fiche utilisateur), par contact de tiers (configuration faite sur chaque fiche tiers) ou vers des adresses e-mails spécifiques. Module600Long=Notez que ce module est dédié à l'envoi d'e-mails en temps réel lorsqu'un événement métier dédié se produit. Si vous cherchez une fonctionnalité pour envoyer des rappels par email de vos événements agenda, allez dans la configuration du module Agenda. Module610Name=Variantes de produits @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Attributs supplémentaires (commandes) ExtraFieldsSupplierInvoices=Attributs supplémentaires (factures) ExtraFieldsProject=Attributs supplémentaires (projets) ExtraFieldsProjectTask=Attributs supplémentaires (tâches) +ExtraFieldsSalaries=Attributs complémentaires (salaires) ExtraFieldHasWrongValue=L'attribut %s a une valeur incorrecte. AlphaNumOnlyLowerCharsAndNoSpace=uniquement des caractères alphanumériques et en minuscule sans espace SendmailOptionNotComplete=Attention, sur certains systèmes Linux, avec cette méthode d'envoi, pour pouvoir envoyer des emails en votre nom, la configuration d'exécution de sendmail doit contenir l'option -ba (paramètre mail.force_extra_parameters dans le fichier php.ini). Si certains de vos destinataires ne reçoivent pas de message, essayer de modifier ce paramètre PHP avec mail.force_extra_parameters = -ba. @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Stockage des sessions chiffrées par Suhosin ConditionIsCurrently=La condition est actuellement %s YouUseBestDriver=Vous utilisez le driver %s qui est le driver recommandé actuellement. YouDoNotUseBestDriver=Vous utilisez le pilote %s mais le pilote %s est recommandé. -NbOfProductIsLowerThanNoPb=Vous avez uniquement %s produits / services dans la base de données. Cela ne nécessite aucune optimisation particulière. +NbOfObjectIsLowerThanNoPb=Vous avez seulement %s %s dans la base de données. Cela ne nécessite aucune optimisation particulière. SearchOptim=Optimisation des recherches -YouHaveXProductUseSearchOptim=Vous avez des produits %s dans la base de données. Vous devez ajouter la constante PRODUCT_DONOTSEARCH_ANYWHERE à 1 dans Home-Setup-Other. Limitez la recherche au début des chaînes, ce qui permet à la base de données d'utiliser des index et vous devez obtenir une réponse immédiate. +YouHaveXObjectUseSearchOptim=Vous avez %s %s dans la base de données. Vous devez ajouter la constante %s à 1 dans Accueil-Configuration-Autre. Ceci limite la recherche au début des chaînes, ce qui permet à la base de données d'utiliser des index et vous devriez obtenir une réponse immédiate. +YouHaveXObjectAndSearchOptimOn=Vous avez %s %s dans la base de données et la constante %s est définie sur 1 dans Accueil-Configuration-Autre. BrowserIsOK=Vous utilisez le navigateur Web %s. Ce navigateur est correct pour la sécurité et la performance. BrowserIsKO=Vous utilisez le navigateur %s. Ce navigateur est déconseillé pour des raisons de sécurité, performance et qualité des pages restituées. Nous vous recommandons d'utiliser Firefox, Chrome, Opera ou Safari. -XDebugInstalled=XDebug est chargé. -XCacheInstalled=XCache est chargé. +PHPModuleLoaded=Le composant PHP %s est chargé +PreloadOPCode=Le code OP préchargé est utilisé AddRefInList=Afficher les références client/fournisseur dans les listes (listes déroulantes ou à autocomplétion) et les libellés des liens clicables.
Les tiers apparaîtront alors sous la forme "CC12345 - SC45678 - La big company coorp", au lieu de "La big company coorp". AddAdressInList=Affiche les informations sur l’adresse du client/fournisseur (liste de sélection ou liste déroulante)
Les tiers apparaîtront avec le format de nom suivant: "The Big Company corp. - 21, rue du saut 123456 Big town - USA" au lieu de "The Big Company corp". AskForPreferredShippingMethod=Demander la méthode d'expédition préférée pour les Tiers @@ -1328,7 +1330,7 @@ AdherentLoginRequired= Gérer un identifiant pour chaque adhérent AdherentMailRequired=Email obligatoire pour créer un nouvel adhérent MemberSendInformationByMailByDefault=Case à cocher pour envoyer un email de confirmation (validation ou nouvelle cotisation) aux adhérents est à oui par défaut. VisitorCanChooseItsPaymentMode=Le visiteur peut choisir parmi les modes de paiement disponibles -MEMBER_REMINDER_EMAIL=Activer le rappel automatique par e-mail des abonnements expirés. Remarque: le module %s doit être activé et configuré correctement pour qu'un rappel soit envoyé. +MEMBER_REMINDER_EMAIL=Activer le rappel automatique par e-mail des adhésions expirées. Remarque: le module %s doit être activé et configuré correctement pour qu'un rappel soit envoyé. ##### LDAP setup ##### LDAPSetup=Configuration du module LDAP LDAPGlobalParameters=Paramètres globaux @@ -1734,8 +1736,8 @@ ExpenseReportsRulesSetup=Configuration du module Notes de frais - Règles ExpenseReportNumberingModules=Modèle de numérotation des notes de frais NoModueToManageStockIncrease=Aucun module capable d'assurer l'augmentation de stock en automatique a été activé. La réduction de stock se fera donc uniquement sur mise à jour manuelle. YouMayFindNotificationsFeaturesIntoModuleNotification=Vous pouvez trouver d'autres options pour la notification par Email en activant et configurant le module "Notification". -ListOfNotificationsPerUser=Liste des notifications par utilisateur* -ListOfNotificationsPerUserOrContact=Liste des notifications par utilisateur* ou par contact** +ListOfNotificationsPerUser=Liste des notifications automatiques par utilisateur* +ListOfNotificationsPerUserOrContact=Liste des notifications automatiques (sur les évênements métiers) par utilisateur* ou par contact** ListOfFixedNotifications=Liste des notifications emails fixes GoOntoUserCardToAddMore=Allez dans l'onglet "Notifications" d'un utilisateur pour ajouter ou supprimer des notifications pour les utilisateurs GoOntoContactCardToAddMore=Rendez-vous sur l'onglet "Notifications" d'un tiers pour ajouter ou enlever les notifications pour les contacts/adresses @@ -1898,6 +1900,11 @@ OnMobileOnly=Sur petit écran (smartphone) uniquement DisableProspectCustomerType=Désactiver le type de tiers "Prospect + Client" (le tiers doit donc être un client potentiel ou un client, mais ne peut pas être les deux) MAIN_OPTIMIZEFORTEXTBROWSER=Simplifier l'interface pour les malvoyants MAIN_OPTIMIZEFORTEXTBROWSERDesc=Activez cette option si vous êtes une personne malvoyante ou utilisez l'application à partir d'un navigateur de texte tel que Lynx ou Links. +MAIN_OPTIMIZEFORCOLORBLIND=Changer la couleur de l'interface pour daltoniens +MAIN_OPTIMIZEFORCOLORBLINDDesc=Activez cette option si vous êtes daltonien. Dans certains cas, l'interface changera la configuration des couleurs pour augmenter le contraste. +Protanopia=Protanopia +Deuteranopes=Deutéranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Cette valeur peut être écrasée par chaque utilisateur à partir de sa page utilisateur - onglet '%s' DefaultCustomerType=Type de tiers par défaut pour un "Nouveau client" dans le formulaire de création ABankAccountMustBeDefinedOnPaymentModeSetup=Remarque: Le compte bancaire doit être défini sur le module de chaque mode de paiement (Paypal, Stripe, ...) pour que cette fonctionnalité fonctionne. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Nombre de lignes à afficher dans l'onglet des logs UseDebugBar=Utilisez la barre de débogage DEBUGBAR_LOGS_LINES_NUMBER=Nombre de dernières lignes de logs à conserver dans la console WarningValueHigherSlowsDramaticalyOutput=Attention, les valeurs élevées ralentissent considérablement les affichages -DebugBarModuleActivated=Le module debugbar est activé et ralentit considérablement l'interface +ModuleActivated=Le module %s est activé et ralentit l'interface EXPORTS_SHARE_MODELS=Les modèles d'exportation sont partagés avec tout le monde ExportSetup=Configuration du module Export InstanceUniqueID=ID unique de l'instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=Vous le trouverez sur votre compte IFTTT EndPointFor=Endpoint pour %s: %s DeleteEmailCollector=Supprimer le collecteur d'email ConfirmDeleteEmailCollector=Êtes-vous sûr de vouloir supprimer ce collecteur d'email ? +RecipientEmailsWillBeReplacedWithThisValue=Les emails des destinataires seront toujours remplacés par cette valeur +AtLeastOneDefaultBankAccountMandatory=Au moins 1 compte bancaire par défaut doit être défini diff --git a/htdocs/langs/fr_FR/agenda.lang b/htdocs/langs/fr_FR/agenda.lang index e187aa037c3..84bd47e9d93 100644 --- a/htdocs/langs/fr_FR/agenda.lang +++ b/htdocs/langs/fr_FR/agenda.lang @@ -55,9 +55,9 @@ MemberValidatedInDolibarr=Adhérent %s validé MemberModifiedInDolibarr=Adhérent %s modifié MemberResiliatedInDolibarr=Adhérent %s résilié MemberDeletedInDolibarr=Adhérent %s supprimé -MemberSubscriptionAddedInDolibarr=Adhésion %s pour l'adhérent %s ajoutée -MemberSubscriptionModifiedInDolibarr=Abonnement %s pour l'adhérent %s modifié -MemberSubscriptionDeletedInDolibarr=Abonnement %s pour l'adhérent %s supprimé +MemberSubscriptionAddedInDolibarr=Cotisation %s pour l'adhérent %s ajoutée +MemberSubscriptionModifiedInDolibarr=Cotisation %s pour l'adhérent %s modifié +MemberSubscriptionDeletedInDolibarr=Cotisation %s pour l'adhérent %s supprimé ShipmentValidatedInDolibarr=Expédition %s validée ShipmentClassifyClosedInDolibarr=Expédition %s classée payée ShipmentUnClassifyCloseddInDolibarr=Expédition %s réouverte diff --git a/htdocs/langs/fr_FR/bills.lang b/htdocs/langs/fr_FR/bills.lang index ca251ed0d93..fefc478c146 100644 --- a/htdocs/langs/fr_FR/bills.lang +++ b/htdocs/langs/fr_FR/bills.lang @@ -95,8 +95,8 @@ PaymentHigherThanReminderToPay=Règlement supérieur au reste à payer HelpPaymentHigherThanReminderToPay=Attention, le montant de paiement pour une ou plusieurs factures est supérieur au reste à payer.
Corrigez votre saisie, sinon, confirmez et pensez à créer un avoir du trop perçu lors de la fermeture de chacune des factures surpayées. HelpPaymentHigherThanReminderToPaySupplier=Attention, le montant de paiement pour une ou plusieurs factures est supérieur au reste à payer.
Corrigez votre saisie, sinon, confirmez et pensez à créer un avoir pour l'excédent pour chaque facture surpayée. ClassifyPaid=Classer 'Payée' +ClassifyUnPaid=Classer 'impayé' ClassifyPaidPartially=Classer 'Payée partiellement' -ClassifyUnPaid=Classer 'Non payée' ClassifyCanceled=Classer 'Abandonnée' ClassifyClosed=Classer 'Fermée' ClassifyUnBilled=Classer 'Non facturée' @@ -215,6 +215,20 @@ ShowInvoiceReplace=Afficher facture de remplacement ShowInvoiceAvoir=Afficher facture d'avoir ShowInvoiceDeposit=Afficher facture d'acompte ShowInvoiceSituation=Afficher la facture de situation +UseSituationInvoices=Autoriser les factures de situation +UseSituationInvoicesCreditNote=Autoriser les avoirs de factures de situation +Retainedwarranty=Retenue de garantie +RetainedwarrantyDefaultPercent=Pourcentage par défaut de la retenue de garantie +ToPayOn=A payer sur %s +toPayOn=à payer sur %s +RetainedWarranty=Retenue de garantie +PaymentConditionsShortRetainedWarranty=Conditions de réglement de la retenue de garantie +DefaultPaymentConditionsRetainedWarranty=Conditions de paiement par défaut des retenues de garantie +setPaymentConditionsShortRetainedWarranty=Fixer les conditions de paiement de la retenue de garantie +setretainedwarranty=Définir la retenue de garantie +setretainedwarrantyDateLimit=Définir la date limite de retenue de garantie +RetainedWarrantyDateLimit=Date limite de retenue de garantie +RetainedWarrantyNeed100Percent=La facture de la situation doit être à 100%% progress pour être affichée sur le PDF ShowPayment=Afficher règlement AlreadyPaid=Déjà réglé AlreadyPaidBack=Déjà remboursé diff --git a/htdocs/langs/fr_FR/errors.lang b/htdocs/langs/fr_FR/errors.lang index a223f936638..b1180581b42 100644 --- a/htdocs/langs/fr_FR/errors.lang +++ b/htdocs/langs/fr_FR/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Les caractères spéciaux ne sont pas admis p 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 ErrorOrdersNotCreatedQtyTooLow=Certaines commandes n'ont pas été créées en raison de quantités trop faibles -ErrorModuleSetupNotComplete=La configuration du module '%s' semble incomplète. Aller sur la page Accueil - Configuration - Modules pour corriger. +ErrorModuleSetupNotComplete=La configuration du module %s semble incomplète. Aller sur la page Accueil - Configuration - Modules pour corriger. ErrorBadMask=Erreur sur le masque ErrorBadMaskFailedToLocatePosOfSequence=Erreur, masque sans numéro de séquence ErrorBadMaskBadRazMonth=Erreur, mauvais valeur de remise à zéro @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=L'URL %s doit 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. # 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. WarningMandatorySetupNotComplete=Cliquez ici pour configurer les paramètres obligatoires WarningEnableYourModulesApplications=Cliquez ici pour activer vos modules et applications diff --git a/htdocs/langs/fr_FR/main.lang b/htdocs/langs/fr_FR/main.lang index 14185575b3f..822a924df1a 100644 --- a/htdocs/langs/fr_FR/main.lang +++ b/htdocs/langs/fr_FR/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/adresses de ce tiers AddressesForCompany=Adresses de ce tiers ActionsOnCompany=Événements sur ce tiers ActionsOnContact=Événements à propos de ce contact/adresse +ActionsOnContract=Événements pour ce contrat ActionsOnMember=Événements vis à vis de cet adhérent ActionsOnProduct=Événements liés au produit NActionsLate=%s en retard @@ -759,6 +760,7 @@ LinkToSupplierProposal=Lier à une proposition commerciale fournisseur LinkToSupplierInvoice=Lier à une facture fournisseur LinkToContract=Lier à un contrat LinkToIntervention=Lier à une intervention +LinkToTicket=Lien vers le ticket CreateDraft=Créer brouillon SetToDraft=Retour en brouillon ClickToEdit=Cliquer ici pour éditer diff --git a/htdocs/langs/fr_FR/members.lang b/htdocs/langs/fr_FR/members.lang index 2d5b024df4f..dfc874bab79 100644 --- a/htdocs/langs/fr_FR/members.lang +++ b/htdocs/langs/fr_FR/members.lang @@ -110,8 +110,8 @@ ShowSubscription=Afficher adhésion SendingAnEMailToMember=Envoi d'informations par e-mail à un adhérent SendingEmailOnAutoSubscription=Envoi d'email lors de l'auto-inscription SendingEmailOnMemberValidation=Envoie d'email à la validation d'un nouvel adhérent -SendingEmailOnNewSubscription=Envoyer un email sur un nouvel abonnement -SendingReminderForExpiredSubscription=Envoi d'un rappel pour les abonnements expirés +SendingEmailOnNewSubscription=Envoyer un email sur une nouvelle adhésion +SendingReminderForExpiredSubscription=Envoi d'un rappel pour les adhésions expirées SendingEmailOnCancelation=Envoie d'email à l'annulation # Topic of email templates YourMembershipRequestWasReceived=Votre demande d'adhésion a été reçue. @@ -130,8 +130,8 @@ DescADHERENT_AUTOREGISTER_NOTIF_MAIL_SUBJECT=Sujet de l'email reçu en cas d'aut DescADHERENT_AUTOREGISTER_NOTIF_MAIL=Email reçu en cas d'auto-inscription d'un invité DescADHERENT_EMAIL_TEMPLATE_AUTOREGISTER=Modèle Email à utiliser pour envoyer un email à un adhérent sur auto-adhésion de l'adhérent DescADHERENT_EMAIL_TEMPLATE_MEMBER_VALIDATION=Modèle d'email à utiliser pour envoyer un email à un membre sur la validation d'un membre -DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Modèle d'email électronique à utiliser pour envoyer un courrier électronique à un membre lors de l'enregistrement d'un nouvel abonnement -DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Modèle d'email électronique à utiliser pour envoyer un rappel par courrier électronique lorsque l'abonnement est sur le point d'expirer +DescADHERENT_EMAIL_TEMPLATE_SUBSCRIPTION=Modèle d'email électronique à utiliser pour envoyer un courrier électronique à un membre lors de l'enregistrement d'une nouvelle cotisation +DescADHERENT_EMAIL_TEMPLATE_REMIND_EXPIRATION=Modèle d'email électronique à utiliser pour envoyer un rappel par courrier électronique lorsque l'adhésion est sur le point d'expirer DescADHERENT_EMAIL_TEMPLATE_CANCELATION=Modèle d'email utilisé pour envoyer un email à un adhérent lors de l'annulation d'adhésion DescADHERENT_MAIL_FROM=Email émetteur pour les mails automatiques DescADHERENT_ETIQUETTE_TYPE=Format pages étiquettes diff --git a/htdocs/langs/fr_FR/products.lang b/htdocs/langs/fr_FR/products.lang index fe794e65446..097e2e3fc8d 100644 --- a/htdocs/langs/fr_FR/products.lang +++ b/htdocs/langs/fr_FR/products.lang @@ -2,6 +2,7 @@ ProductRef=Réf. produit ProductLabel=Libellé produit ProductLabelTranslated=Libellé produit traduit +ProductDescription=Description du produit ProductDescriptionTranslated=Description produit traduite ProductNoteTranslated=Traduire la note de produit ProductServiceCard=Fiche produit/service diff --git a/htdocs/langs/fr_FR/stripe.lang b/htdocs/langs/fr_FR/stripe.lang index a88a2f40c3b..1e69e280562 100644 --- a/htdocs/langs/fr_FR/stripe.lang +++ b/htdocs/langs/fr_FR/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=Compte d'utilisateur à utiliser pour certains e-mai StripePayoutList=Liste des versements par Stripe ToOfferALinkForTestWebhook=Lien pour la configuration de Stripe WebHook pour appeler l'IPN (mode test) ToOfferALinkForLiveWebhook=Lien pour la configuration de Stripe WebHook pour appeler l'IPN (mode actif) +PaymentWillBeRecordedForNextPeriod=Le paiement sera enregistré pour la prochaine période. +ClickHereToTryAgain=Cliquez ici pour essayer à nouveau... diff --git a/htdocs/langs/fr_FR/website.lang b/htdocs/langs/fr_FR/website.lang index e8a11ce5594..0bf16fbb663 100644 --- a/htdocs/langs/fr_FR/website.lang +++ b/htdocs/langs/fr_FR/website.lang @@ -39,8 +39,8 @@ ViewPageInNewTab=Pré-visualiser la page dans un nouvel onglet SetAsHomePage=Définir comme page d'accueil RealURL=URL réelle ViewWebsiteInProduction=Pré-visualiser le site web en utilisant l'URL de la page d'accueil -SetHereVirtualHost= Utilisation avec Apache/NGinx/...
Si vous pouvez créer sur votre serveur Web (Apache, Nginx, ...) un hôte virtuel dédié avec PHP activé et un répertoire racine sur
%s
alors entrez le nom de l'hôte virtuel que vous avez créé afin que l'aperçu puisse également être fait en utilisant cet accès via ce serveur Web dédié plutôt que le serveur interne Dolibarr. -YouCanAlsoTestWithPHPS= Utilisation avec un serveur PHP incorporé
Sous environnement de développement, vous pouvez préférer tester le site avec le serveur Web PHP intégré (PHP 5.5 requis) en exécutant
php -S 0.0. 0,0: 8080 -t %s +SetHereVirtualHost= Utilisation avec Apache/NGinx/...
Si vous pouvez créer sur votre serveur Web (Apache, Nginx, ...) un hôte virtuel dédié avec PHP activé et un répertoire racine sur
%s
alors entrez le nom de l'hôte virtuel que vous avez créé dans les propriétés du site, ainsi l'aperçu pourra être fait en utilisant cette URL pour un accès via le serveur Web dédié plutôt que via le serveur interne Dolibarr. +YouCanAlsoTestWithPHPS= Utilisation avec un serveur PHP incorporé
Sous environnement de développement, vous pouvez préférer tester le site avec le serveur Web PHP intégré (PHP 5.5 requis) en exécutant
php -S 0.0.0.0:8080 -t %s CheckVirtualHostPerms=Vérifiez également que le virtual host a la permission %s sur les fichiers dans %s ReadPerm=Lire WritePerm=Écrire diff --git a/htdocs/langs/fr_FR/withdrawals.lang b/htdocs/langs/fr_FR/withdrawals.lang index 586da7253da..468cdd8b9f3 100644 --- a/htdocs/langs/fr_FR/withdrawals.lang +++ b/htdocs/langs/fr_FR/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Fichier de prélèvement SetToStatusSent=Mettre au statut "Fichier envoyé" ThisWillAlsoAddPaymentOnInvoice=Cette action enregistrera les règlements des factures et les classera au statut "Payé" si le solde est nul StatisticsByLineStatus=Statistiques par statut des lignes -RUM=RUM +RUM=Référence de Mandat Unique (RUM) +DateRUM=Date de signature du mandat RUMLong=Référence Unique de Mandat RUMWillBeGenerated=Si vide, le numéro de RUM sera généré une fois les informations de compte bancaire enregistrées WithdrawMode=Mode de prélévement (FRST ou RECUR) diff --git a/htdocs/langs/he_IL/accountancy.lang b/htdocs/langs/he_IL/accountancy.lang index 758d9c340a5..1fc3b3e05ec 100644 --- a/htdocs/langs/he_IL/accountancy.lang +++ b/htdocs/langs/he_IL/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/he_IL/admin.lang b/htdocs/langs/he_IL/admin.lang index 91d7f6f0c2c..8de440a7812 100644 --- a/htdocs/langs/he_IL/admin.lang +++ b/htdocs/langs/he_IL/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=הודעות +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=אזהרה, על כמה מערכות לינוקס, לשלוח דוא"ל הדוא"ל שלך, הגדרת sendmail ביצוע חובה conatins אפשרות-BA (mail.force_extra_parameters פרמטר לקובץ php.ini שלך). אם מקבלי כמה לא לקבל הודעות דוא"ל, מנסה לערוך פרמטר זה PHP עם mail.force_extra_parameters =-BA). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/he_IL/bills.lang b/htdocs/langs/he_IL/bills.lang index 51e56257d26..2ee05e17cfe 100644 --- a/htdocs/langs/he_IL/bills.lang +++ b/htdocs/langs/he_IL/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/he_IL/errors.lang b/htdocs/langs/he_IL/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/he_IL/errors.lang +++ b/htdocs/langs/he_IL/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/he_IL/main.lang b/htdocs/langs/he_IL/main.lang index 8fe7834c2d0..c62afca2efb 100644 --- a/htdocs/langs/he_IL/main.lang +++ b/htdocs/langs/he_IL/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/he_IL/products.lang b/htdocs/langs/he_IL/products.lang index 304814e958e..b6228d61aea 100644 --- a/htdocs/langs/he_IL/products.lang +++ b/htdocs/langs/he_IL/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/he_IL/stripe.lang b/htdocs/langs/he_IL/stripe.lang index 7a3389f34b7..c5224982873 100644 --- a/htdocs/langs/he_IL/stripe.lang +++ b/htdocs/langs/he_IL/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/he_IL/withdrawals.lang b/htdocs/langs/he_IL/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/he_IL/withdrawals.lang +++ b/htdocs/langs/he_IL/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/hr_HR/accountancy.lang b/htdocs/langs/hr_HR/accountancy.lang index 81a9aa03a11..841716ba364 100644 --- a/htdocs/langs/hr_HR/accountancy.lang +++ b/htdocs/langs/hr_HR/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Vrsta +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Prodaja AccountingJournalType3=Nabava @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Inicijalizacija računovodstva InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Opcije OptionModeProductSell=Načini prodaje OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/hr_HR/admin.lang b/htdocs/langs/hr_HR/admin.lang index 40f4dc40255..03b8897ad05 100644 --- a/htdocs/langs/hr_HR/admin.lang +++ b/htdocs/langs/hr_HR/admin.lang @@ -508,7 +508,7 @@ Module22Name=Mass Emailings Module22Desc=Manage bulk emailing Module23Name=Energija Module23Desc=Praćenje potrošnje energije -Module25Name=Sales Orders +Module25Name=Narudžbe kupaca Module25Desc=Sales order management Module30Name=Računi Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers @@ -574,7 +574,7 @@ Module510Name=Plaće Module510Desc=Record and track employee payments Module520Name=Krediti Module520Desc=Upravljanje kreditima -Module600Name=Obavijesti +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -590,7 +590,7 @@ Module1200Desc=Integracija Mantisa Module1520Name=Generiranje dokumenta Module1520Desc=Mass email document generation Module1780Name=Kategorije -Module1780Desc=Kreiraj kategoriju (proizvodi, kupci, dobavljači, kontakti ili članovi) +Module1780Desc=Izradi oznake/skupinu (proizvodi, kupci, dobavljači, kontakti ili članovi) Module2000Name=WYSIWYG editor Module2000Desc=Allow text fields to be edited/formatted using CKEditor (html) Module2200Name=Dinamičke cijene @@ -653,21 +653,21 @@ Module62000Desc=Add features to manage Incoterms Module63000Name=Sredstva Module63000Desc=Manage resources (printers, cars, rooms, ...) for allocating to events Permission11=Čitaj račune kupca -Permission12=Kreiraj/promjeni račune kupca +Permission12=Izradi/promjeni račune kupca Permission13=Ne ovjeravaj račun kupca Permission14=Ovjeri račun kupca Permission15=Pošalji račun kupca e-poštom -Permission16=Kreiraj plaćanje za račune kupca +Permission16=Izradi plaćanje za račune kupca Permission19=Obriši račun kupca Permission21=Pročitaj ponude -Permission22=Kreiraj/izmjeni ponudu +Permission22=Izradi/izmjeni ponudu Permission24=Ovjeri ponudu Permission25=Pošalji ponudu Permission26=Zatvori ponudu Permission27=Obriši ponudu Permission28=Izvezi ponude Permission31=Čitaj proizvode -Permission32=Kreiraj/izmjeni proizvod +Permission32=Izradi/izmjeni proizvod Permission34=Obriši proizvod Permission36=Pregled/upravljanje skrivenim proizvodima Permission38=izvoz proizvoda @@ -676,16 +676,16 @@ Permission42=Create/modify projects (shared project and projects I'm contact for Permission44=Delete projects (shared project and projects I'm contact for) Permission45=Izvezi projekte Permission61=Čitaj intervencije -Permission62=Kreiraj/promjeni intervencije +Permission62=Izradi/promjeni intervencije Permission64=Obriši intervencije Permission67=Izvezi intervencije Permission71=Čitaj članove -Permission72=Kreiraj/izmjeni članove +Permission72=Izradi/izmjeni članove Permission74=Obriši članove -Permission75=Podešavanje tipova članarine +Permission75=Podešavanje vrsta članarine Permission76=Izvoz podataka Permission78=Čitaj pretplate -Permission79=Kreiraj/izmjeni pretplate +Permission79=Izradi/izmjeni pretplate Permission81=Čitaj narudžbe kupca Permission82=Izradi/izmjeni narudžbe kupaca Permission84=Ovjeri narudžbu kupca @@ -694,24 +694,24 @@ Permission87=Zatvori narudžbu kupca Permission88=Otkaži potvrdu Permission89=Obriši narudžbe kupaca Permission91=Čitaj društvene ili fiskalne poreze i PDV -Permission92=Kreiraj/izmjeni društvene ili fiskalne poreze i PDV +Permission92=Izradi/izmjeni društvene ili fiskalne poreze i PDV Permission93=Obriši društvene ili fiskalne poreze i PDV Permission94=Izvezi društvene ili fiskalne poreze Permission95=Čitaj izvještaje Permission101=Čitaj slanja -Permission102=Kreiraj/izmjeni slanja +Permission102=Izradi/izmjeni slanja Permission104=Ovjeri slanja Permission106=Izvezi slanja Permission109=Obriši slanja Permission111=Čitanje financijskih računa -Permission112=Kreiraj/izmjeni/obriši i usporedi transakcije +Permission112=Izradi/izmjeni/obriši i usporedi transakcije Permission113=Podešavanje financijskih računa (kreiranje, upravljanje kategorijama) Permission114=Reconcile transactions Permission115=Izvoz transakcija i izvodi Permission116=Prijenos između računa Permission117=Manage checks dispatching Permission121=Čitaj veze komitenata s korisnicima -Permission122=Kreiraj/izmjeni komitente povezane s korisnicima +Permission122=Izradi/izmjeni komitente povezane s korisnicima Permission125=Obriši komitente povezane s korisnicima Permission126=Izvezi komitente Permission141=Read all projects and tasks (also private projects for which I am not a contact) @@ -724,13 +724,13 @@ Permission152=Create/modify a direct debit payment orders Permission153=Send/Transmit direct debit payment orders Permission154=Record Credits/Rejections of direct debit payment orders Permission161=Čitaj ugovore/pretplate -Permission162=Kreiraj/izmjeni ugovore/pretplate +Permission162=Izradi/izmjeni ugovore/pretplate Permission163=Aktiviraj uslugu/pretplatu ugovora Permission164=Deaktiviraj uslugu/pretplatu ugovora Permission165=Obriši ugovore/pretplate Permission167=Izvezi ugovore Permission171=Čitaj putne naloge i troškove (vaši i vaših podređenih) -Permission172=Kreiraj/izmjeni putne naloge i troškove +Permission172=Izradi/izmjeni putne naloge i troškove Permission173=Obriši putne naloge i troškove Permission174=Čitaj sve putne naloge i troškove Permission178=Izvezi putne naloge i troškove @@ -743,10 +743,10 @@ Permission185=Order or cancel purchase orders Permission186=Receive purchase orders Permission187=Close purchase orders Permission188=Cancel purchase orders -Permission192=Kreiraj stavke +Permission192=Izradi stavke Permission193=Otkaži stavke Permission194=Read the bandwidth lines -Permission202=Kreiraj ADSL sapajanje +Permission202=Izradi ADSL sapajanje Permission203=Naruči narudžbe spajanja Permission204=Narudžba spajanja Permission205=Upravljanje spajanjima @@ -757,22 +757,22 @@ Permission213=Aktiviraj liniju Permission214=Postavke telefonije Permission215=Postavke pružatelja Permission221=Čitaj korespodenciju -Permission222=Kreiraj/izmjeni korespodenciju (teme, primatelji...) +Permission222=Izradi/izmjeni korespodenciju (teme, primatelji...) Permission223=Ovjeri korespodenciju (omogućuje slanje) Permission229=Obriši korespodenciju Permission237=Pregled primatelja i informacije Permission238=Ručno slanje korespodencije Permission239=Obriši korespodenciju nakon ovjere ili slanja Permission241=Čitaj kategorije -Permission242=Kreiraj/izmjeni kategorije +Permission242=Izradi/izmjeni kategorije Permission243=Obriši kategorije Permission244=Vidi sadržaj skrivenih kategorija Permission251=Čitaj ostale korisnike i grupe PermissionAdvanced251=Čitaj ostale korisnike Permission252=Čitaj dozvole ostalih korisnika Permission253=Create/modify other users, groups and permissions -PermissionAdvanced253=Kreiraj/izmjeni interne/vanjske korisnike i dozvole -Permission254=Kreiraj/izmjeni samo vanjske korisnike +PermissionAdvanced253=Izradi/izmjeni interne/vanjske korisnike i dozvole +Permission254=Izradi/izmjeni samo vanjske korisnike Permission255=Izmjeni lozinku ostalih korisnika Permission256=Obriši ili isključi ostale korisnike Permission262=Extend access to all third parties (not only third parties for which that user is a sale representative).
Not effective for external users (always limited to themselves for proposals, orders, invoices, contracts, etc.).
Not effective for projects (only rules on project permissions, visibility and assignment matters). @@ -780,7 +780,7 @@ Permission271=Čitaj CA Permission272=Čitaj račune Permission273=Izdaj račun Permission281=Čitaj kontakte -Permission282=Kreiraj/izmjeni kontakte +Permission282=Izradi/izmjeni kontakte Permission283=Obriši kontakte Permission286=Izvezi kontakte Permission291=Čitaj tarife @@ -792,19 +792,19 @@ Permission302=Delete barcodes Permission311=Čitaj usluge Permission312=Dodavanje usluge/pretplate ugovoru Permission331=Čitaj zabilješke -Permission332=Kreiraj/izmjeni zabilješke +Permission332=Izradi/izmjeni zabilješke Permission333=Obriši zabilješke Permission341=Čitaj svoje dozvole -Permission342=Kreiraj/izmjeni svoje korisničke informacije +Permission342=Izradi/izmjeni svoje korisničke informacije Permission343=Izmjeni svoju lozinku Permission344=Izmjeni svoje dozvole Permission351=Čitaj grupe Permission352=Čitaj dozvole grupa -Permission353=Kreiraj/izmjeni grupe +Permission353=Izradi/izmjeni grupe Permission354=Obriši ili iskljući grupe Permission358=Izvezi korisnike Permission401=Čitaj popuste -Permission402=Kreiraj/izmjeni popuste +Permission402=Izradi/izmjeni popuste Permission403=Ovjeri popuste Permission404=Obriši popuste Permission430=Use Debug Bar @@ -813,12 +813,12 @@ Permission512=Create/modify payments of salaries Permission514=Delete payments of salaries Permission517=Izvoz plaća Permission520=Čitaj kredite -Permission522=Kreiraj/izmjeni kredite +Permission522=Izradi/izmjeni kredite Permission524=Obriši kredite Permission525=Pristup kreditnom kalkulatoru Permission527=Izvoz kredita Permission531=Čitaj usluge -Permission532=Kreiraj/izmjeni usluge +Permission532=Izradi/izmjeni usluge Permission534=Obriši usluge Permission536=Vidi/upravljaj skrivenim uslugama Permission538=Izvezi usluge @@ -826,22 +826,22 @@ Permission650=Read Bills of Materials Permission651=Create/Update Bills of Materials Permission652=Delete Bills of Materials Permission701=Čitaj donacije -Permission702=Kreiraj/izmjeni donacije +Permission702=Izradi/izmjeni donacije Permission703=Obriši donacije Permission771=Čitaj izvještaje troška (vaši i vaših podređenih) -Permission772=Kreiraj/izmjeni izvještaje troška +Permission772=Izradi/izmjeni izvještaje troška Permission773=Obriši izvještaje troška Permission774=Čitaj sve izvještaje troška (čak i svoje i podređenih) Permission775=Odobri izvještaje trška Permission776=Isplati izvještaje troška Permission779=Izvezi izvještaje troška Permission1001=Čitaj zalihe -Permission1002=Kreiraj/izmjeni skladišta +Permission1002=Izradi/izmjeni skladišta Permission1003=Obriši skladišta Permission1004=Čitaj kretanja zaliha -Permission1005=Kreiraj/izmjeni kretanja zaliha +Permission1005=Izradi/izmjeni kretanja zaliha Permission1101=Čitaj naloge isporuka -Permission1102=Kreiraj/izmjeni naloge isporuka +Permission1102=Izradi/izmjeni naloge isporuka Permission1104=Ovjeri naloge isporuka Permission1109=Obriši naloge isporuka Permission1121=Read supplier proposals @@ -860,7 +860,7 @@ Permission1187=Acknowledge receipt of purchase orders Permission1188=Delete purchase orders Permission1190=Approve (second approval) purchase orders Permission1201=Primi rezultat izvoza -Permission1202=Kreiraj/izmjeni izvoz +Permission1202=Izradi/izmjeni izvoz Permission1231=Read vendor invoices Permission1232=Create/modify vendor invoices Permission1233=Validate vendor invoices @@ -873,10 +873,10 @@ Permission1321=Izvezi račune kupaca, atribute i plačanja Permission1322=Reopen a paid bill Permission1421=Export sales orders and attributes Permission2401=Čitaj akcije (događaje ili zadatke) povezanih s njegovim računom -Permission2402=Kreiraj/izmjeni akcije (događaje ili zadatke) povezanih s njegovim računom +Permission2402=Izradi/izmjeni akcije (događaje ili zadatke) povezanih s njegovim računom Permission2403=Obriši akcije (događaje ili zadatke) povezanih s njegovim računom Permission2411=Čitaj akcije (događaje ili zadatke) ostalih -Permission2412=Kreiraj/izmjeni akcije (događaje ili zadatke) ostalih +Permission2412=Izradi/izmjeni akcije (događaje ili zadatke) ostalih Permission2413=Obriši akcije (događaje ili zadatke) ostalih Permission2414=Izvezi ostale akcije/zadatke Permission2501=Čitaj/Skini dokumente @@ -901,7 +901,7 @@ Permission20004=Read all leave requests (even of user not subordinates) Permission20005=Create/modify leave requests for everybody (even of user not subordinates) Permission20006=Admin zahtjevi odsutnosti ( podešavanje i saldo ) Permission23001=Pročitaj planirani posao -Permission23002=Kreiraj/izmjeni Planirani posao +Permission23002=Izradi/izmjeni Planirani posao Permission23003=Obriši planirani posao Permission23004=Izvrši planirani posao Permission50101=Use Point of Sale @@ -922,15 +922,15 @@ Permission51003=Delete assets Permission51005=Setup types of asset Permission54001=Ispis Permission55001=Čitaj ankete -Permission55002=Kreiraj/izmjeni ankete +Permission55002=Izradi/izmjeni ankete Permission59001=Pročitaj komercijalne marže Permission59002=Postavi komercijalne marže Permission59003=Čitaj marže svakog korisnika Permission63001=Čitaj sredstva -Permission63002=Kreiraj/izmjeni sredstva +Permission63002=Izradi/izmjeni sredstva Permission63003=Obriši sredstva Permission63004=Poveži sredstava sa događajima agende -DictionaryCompanyType=Third-party types +DictionaryCompanyType=Vrste trećih osoba DictionaryCompanyJuridicalType=Third-party legal entities DictionaryProspectLevel=Potencijalni kupac DictionaryCanton=States/Provinces @@ -942,7 +942,7 @@ DictionaryActions=Tipovi događaja agende DictionarySocialContributions=Types of social or fiscal taxes DictionaryVAT=Stope PDV-a ili stope prodajnih poreza DictionaryRevenueStamp=Amount of tax stamps -DictionaryPaymentConditions=Payment Terms +DictionaryPaymentConditions=Rok plaćanja DictionaryPaymentModes=Payment Modes DictionaryTypeContact=Tipovi Kontakata/adresa DictionaryTypeOfContainer=Website - Type of website pages/containers @@ -981,13 +981,13 @@ LTRate=Stopa LocalTax1IsNotUsed=Nemoj koristit drugi porez LocalTax1IsUsedDesc=Use a second type of tax (other than first one) LocalTax1IsNotUsedDesc=Do not use other type of tax (other than first one) -LocalTax1Management=Tip drugog poreza +LocalTax1Management=Vrsta drugog poreza LocalTax1IsUsedExample= LocalTax1IsNotUsedExample= LocalTax2IsNotUsed=Nemoj koristiti treći porez LocalTax2IsUsedDesc=Use a third type of tax (other than first one) LocalTax2IsNotUsedDesc=Do not use other type of tax (other than first one) -LocalTax2Management=Tip trećeg poreza +LocalTax2Management=Vrsta trećeg poreza LocalTax2IsUsedExample= LocalTax2IsNotUsedExample= LocalTax1ManagementES=Upravljenje RE @@ -1038,7 +1038,7 @@ Tables=Tabele TableName=Naziv tabele NbOfRecord=No. of records Host=Server -DriverType=Tip upr. programa +DriverType=Vrsta upr. programa SummarySystem=Sažetak informacija o sistemu SummaryConst=Popis svih Dolibarr parametara podešavanja MenuCompanySetup=Tvrtka/Organizacija @@ -1186,13 +1186,14 @@ ExtraFieldsSupplierInvoicesLines=Dodatni atributi (stavke računa) ExtraFieldsThirdParties=Complementary attributes (third party) ExtraFieldsContacts=Complementary attributes (contacts/address) ExtraFieldsMember=Dodatni atributi (član) -ExtraFieldsMemberType=Dodatni atributi (tip člana) +ExtraFieldsMemberType=Dodatni atributi (vrsta člana) ExtraFieldsCustomerInvoices=Dodatni atributi (računi) ExtraFieldsCustomerInvoicesRec=Complementary attributes (templates invoices) ExtraFieldsSupplierOrders=Dodatni atributi (narudžbe) ExtraFieldsSupplierInvoices=Dodatni atributi (računi) ExtraFieldsProject=Dodatni atributi (projekti) ExtraFieldsProjectTask=Dodatni atributi (zadaci) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Atribut %s ima krivu vrijednost. AlphaNumOnlyLowerCharsAndNoSpace=samo alfanumerički i mala slova bez razmaka SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Stanje je trenutno %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Optimizacija pretrage -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1498,8 +1500,8 @@ MergePropalProductCard=Activate in product/service Attached Files tab an option ViewProductDescInThirdpartyLanguageAbility=Display products descriptions in the language of the third party UseSearchToSelectProductTooltip=Also if you have a large number of products (> 100 000), you can increase speed by setting constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Setup->Other. Search will then be limited to start of string. UseSearchToSelectProduct=Wait until you press a key before loading content of product combo list (This may increase performance if you have a large number of products, but it is less convenient) -SetDefaultBarcodeTypeProducts=Zadani tip barkoda za korištenje kod proizvoda -SetDefaultBarcodeTypeThirdParties=Zadani tip barkoda za korištenje kod komitenta +SetDefaultBarcodeTypeProducts=Zadana vrsta barkoda za korištenje kod proizvoda +SetDefaultBarcodeTypeThirdParties=Zadana vrsta barkoda za korištenje kod komitenta UseUnits=Define a unit of measure for Quantity during order, proposal or invoice lines edition ProductCodeChecker= Module for product code generation and checking (product or service) ProductOtherConf= Konfiguracija Proizvoda / Usluga @@ -1522,7 +1524,7 @@ DonationsReceiptModel=Predložak za donacijsku primku ##### Barcode ##### BarcodeSetup=Podešavanje barkoda PaperFormatModule=Modul formata ispisa -BarcodeEncodeModule=Tip dekodiranja barkoda +BarcodeEncodeModule=Vrsta dekodiranja barkoda CodeBarGenerator=Generator barkoda ChooseABarCode=Generator nije definiran FormatNotSupportedByGenerator=Format nije podržan ovim generatora @@ -1590,7 +1592,7 @@ HideUnauthorizedMenu= Sakrij neautorizirane izbornike (sivo) DetailId=ID Izbornika DetailMenuHandler=Nosioc izbornika gdje da se prikaže novi izbornik DetailMenuModule=Naziv modula ako stavka izbornika dolazi iz modula -DetailType=Tip izbornika (gore ili lijevi) +DetailType=Vrsta izbornika (gore ili lijevi) DetailTitre=Oznaka izbornika ili oznaka koda za prijevod DetailUrl=URL where menu send you (Absolute URL link or external link with http://) DetailEnabled=Uvjet za prikaz stavke ili ne @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=Popis obavijesti po korisniku * -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Najviše dopušteno @@ -1771,7 +1773,7 @@ RecuperableOnly=Yes for VAT "Not Perceived but Recoverable" dedicated for some s UrlTrackingDesc=If the provider or transport service offers a page or web site to check the status of your shipments, you may enter it here. You can use the key {TRACKID} in the URL parameters so the system will replace it with the tracking number the user entered into the shipment card. OpportunityPercent=When you create a lead, you will define an estimated amount of project/lead. According to status of the lead, this amount may be multiplied by this rate to evaluate a total amount all your leads may generate. Value is a percentage (between 0 and 100). TemplateForElement=This template record is dedicated to which element -TypeOfTemplate=Tip predloška +TypeOfTemplate=Vrsta predloška TemplateIsVisibleByOwnerOnly=Template is visible to owner only VisibleEverywhere=Visible everywhere VisibleNowhere=Visible nowhere @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/hr_HR/agenda.lang b/htdocs/langs/hr_HR/agenda.lang index 6192a20c6aa..645ac6c0003 100644 --- a/htdocs/langs/hr_HR/agenda.lang +++ b/htdocs/langs/hr_HR/agenda.lang @@ -125,9 +125,9 @@ ExtSiteUrlAgenda=URL za pristup .ical datoteki ExtSiteNoLabel=Bez opisa VisibleTimeRange=Vidljivi vremenski raspon VisibleDaysRange=Vidljivi dnevni raspon -AddEvent=Kreiraj događaj +AddEvent=Izradi događaj MyAvailability=Moja dostupnost -ActionType=Tip događaja +ActionType=Vrsta događaja DateActionBegin=Datum početka događaja ConfirmCloneEvent=Are you sure you want to clone the event %s? RepeatEvent=Ponovi događaj diff --git a/htdocs/langs/hr_HR/banks.lang b/htdocs/langs/hr_HR/banks.lang index 8c6708b063c..25dc19fe6c8 100644 --- a/htdocs/langs/hr_HR/banks.lang +++ b/htdocs/langs/hr_HR/banks.lang @@ -1,6 +1,6 @@ # Dolibarr language file - Source file is en_US - banks Bank=Banka -MenuBankCash=Banks | Cash +MenuBankCash=Banke | Gotovina MenuVariousPayment=Miscellaneous payments MenuNewVariousPayment=New Miscellaneous payment BankName=Ime banke @@ -47,13 +47,13 @@ BankAccountCountry=Država računa BankAccountOwner=Naziv vlasnika računa BankAccountOwnerAddress=Adresa vlasinka računa RIBControlError=Integrity check of values failed. This means the information for this account number is not complete or is incorrect (check country, numbers and IBAN). -CreateAccount=Kreiraj račun +CreateAccount=Izradi račun NewBankAccount=Novi račun NewFinancialAccount=Novi financijski račun MenuNewFinancialAccount=Novi financijski račun EditFinancialAccount=Uredi račun LabelBankCashAccount=Oznaka za banku ili gotovinu -AccountType=Tip računa +AccountType=Vrsta računa BankType0=Štedni račun BankType1=Tekući račun ili kreditna kartica BankType2=Gotovinski račun diff --git a/htdocs/langs/hr_HR/bills.lang b/htdocs/langs/hr_HR/bills.lang index 6f68286f9ae..993ae31d4c3 100644 --- a/htdocs/langs/hr_HR/bills.lang +++ b/htdocs/langs/hr_HR/bills.lang @@ -1,5 +1,5 @@ # Dolibarr language file - Source file is en_US - bills -Bill=Račun R1 +Bill=Račun Bills=Računi BillsCustomers=Računi kupaca BillsCustomer=Račun kupca @@ -16,7 +16,7 @@ DisabledBecauseNotLastInvoice=Nije moguće provesti jer se račun ne može izbri DisabledBecauseNotErasable=Nije moguće provesti jer ne može biti obrisano InvoiceStandard=Običan račun InvoiceStandardAsk=Običan račun -InvoiceStandardDesc=Ovo je uobičajeni tip računa. +InvoiceStandardDesc=Ovo je uobičajena vrsta računa. InvoiceDeposit=Račun za predujam InvoiceDepositAsk=Račun za predujam InvoiceDepositDesc=Ovakav račun izdaje se kada je zaprimljen predujam @@ -46,8 +46,8 @@ NoInvoiceToCorrect=Nema računa za ispravak InvoiceHasAvoir=Bio je izvor od jednog ili više knjižnih odobrenja CardBill=Kartica računa PredefinedInvoices=Predlošci računa -Invoice=Račun R1 -PdfInvoiceTitle=Račun R1 +Invoice=Račun +PdfInvoiceTitle=Račun Invoices=Računi InvoiceLine=Redak računa InvoiceCustomer=Račun za kupca @@ -80,27 +80,28 @@ PaymentsReports=Izvještaji plaćanja PaymentsAlreadyDone=Izvršena plaćanja PaymentsBackAlreadyDone=Izvršeni povrati plaćanja PaymentRule=Način plaćanja -PaymentMode=Payment Type +PaymentMode=Način plaćanja PaymentTypeDC=Debitna/kreditna kartica PaymentTypePP=PayPal IdPaymentMode=Payment Type (id) CodePaymentMode=Payment Type (code) LabelPaymentMode=Payment Type (label) -PaymentModeShort=Payment Type +PaymentModeShort=Način plaćanja PaymentTerm=Payment Term -PaymentConditions=Payment Terms -PaymentConditionsShort=Payment Terms +PaymentConditions=Rok plaćanja +PaymentConditionsShort=Rok plaćanja PaymentAmount=Iznos plaćanja PaymentHigherThanReminderToPay=Iznos plaćanja veći je od iznosa po podsjetniku na plaćanje HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Označi kao plaćeno +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Označi kao djelomično plaćeno ClassifyCanceled=Označi kao napušteno ClassifyClosed=Označi kao zatvoreno ClassifyUnBilled=Označi kao "nezaračunato" CreateBill=Izradi račun -CreateCreditNote=Create credit note +CreateCreditNote=Izradi storno računa/knjižno odobrenje AddBill=Izradi račun ili storno računa/knjižno odobrenje AddToDraftInvoices=Dodati u predložak računa DeleteBill=Izbriši račun @@ -108,12 +109,12 @@ SearchACustomerInvoice=Traži račun za kupca SearchASupplierInvoice=Search for a vendor invoice CancelBill=Poništi račun SendRemindByMail=Pošalji podsjetnik e-poštom -DoPayment=Enter payment +DoPayment=Unesi uplatu DoPaymentBack=Enter refund ConvertToReduc=Mark as credit available ConvertExcessReceivedToReduc=Convert excess received into available credit ConvertExcessPaidToReduc=Convert excess paid into available discount -EnterPaymentReceivedFromCustomer=Upiši zaprimljeno plaćanje kupca +EnterPaymentReceivedFromCustomer=Unesi uplatu od kupca EnterPaymentDueToCustomer=Napravi DisabledBecauseRemainderToPayIsZero=Isključeno jer preostalo dugovanje je nula. PriceBase=Osnovica @@ -150,7 +151,7 @@ ErrorBillNotFound=Račun %s ne postoji ErrorInvoiceAlreadyReplaced=Error, you tried to validate an invoice to replace invoice %s. But this one has already been replaced by invoice %s. ErrorDiscountAlreadyUsed=Greška! Popust je već iskorišten. ErrorInvoiceAvoirMustBeNegative=Greška! Ispravan račun treba imati negativan iznos. -ErrorInvoiceOfThisTypeMustBePositive=Greška! Ovaj tip računa mora imati pozitivan iznos +ErrorInvoiceOfThisTypeMustBePositive=Greška! Ova vrsta računa mora imati pozitivan iznos ErrorCantCancelIfReplacementInvoiceNotValidated=Greška! Ne može se poništiti račun koji je zamijenjen drugim računom koji je otvoren kao skica. ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved=This part or another is already used so discount series cannot be removed. BillFrom=Od @@ -211,9 +212,23 @@ ShowSocialContribution=Prikaži društveni/fiskalni porez ShowBill=Prikaži račun ShowInvoice=Prikaži račun ShowInvoiceReplace=Prikaži zamjenski računa -ShowInvoiceAvoir=Prikaži bonifikaciju +ShowInvoiceAvoir=Prikaži storno računa/knjižno odobrenje ShowInvoiceDeposit=Prikaži račun za predujam ShowInvoiceSituation=Prikaži račun etape +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Prikaži plaćanje AlreadyPaid=Plaćeno do sada AlreadyPaidBack=Povrati do sada @@ -251,8 +266,8 @@ ClassifyBill=Svrstavanje računa SupplierBillsToPay=Unpaid vendor invoices CustomerBillsUnpaid=Neplaćeni računi kupaca NonPercuRecuperable=Nepovratno -SetConditions=Set Payment Terms -SetMode=Set Payment Type +SetConditions=Odredi rok plaćanja +SetMode=Izaberi način plaćanja SetRevenuStamp=Postavi prihodovnu markicu Billed=Zaračunato RecurringInvoices=Pretplatnički računi @@ -269,26 +284,26 @@ ExportDataset_invoice_1=Customer invoices and invoice details ExportDataset_invoice_2=Računi i plaćanja kupca ProformaBill=Predračun: Reduction=Smanjivanje -ReductionShort=Disc. +ReductionShort=Popust Reductions=Smanjivanja -ReductionsShort=Disc. +ReductionsShort=Popust Discounts=Popusti AddDiscount=Izradi popust AddRelativeDiscount=Izradi relativan popust EditRelativeDiscount=Izmjeni relativan popust AddGlobalDiscount=Izradi apsolutni popust EditGlobalDiscounts=Izmjeni apsolutni popust -AddCreditNote=Izradi bonifikaciju +AddCreditNote=Izradi storno računa/knjižno odobrenje ShowDiscount=Prikaži popust ShowReduc=Prikaži odbitak RelativeDiscount=Relativni popust GlobalDiscount=Opći popust -CreditNote=Bonifikacija -CreditNotes=Bonifikacija +CreditNote=Storno računa/knjižno odobrenje +CreditNotes=Storno računa/knjižno odobrenje CreditNotesOrExcessReceived=Storno računa/knjižno odobrenje Deposit=Predujam Deposits=Predujam -DiscountFromCreditNote=Popust iz bonifikacije %s +DiscountFromCreditNote=Popust od storno računa/knjižnog odobrenja %s DiscountFromDeposit=Predujmovi iz računa %s DiscountFromExcessReceived=Payments in excess of invoice %s DiscountFromExcessPaid=Payments in excess of invoice %s @@ -446,7 +461,7 @@ IntracommunityVATNumber=Intra-Community VAT ID PaymentByChequeOrderedTo=Check payments (including tax) are payable to %s, send to PaymentByChequeOrderedToShort=Check payments (incl. tax) are payable to SendTo=Pošalji -PaymentByTransferOnThisBankAccount=Payment by transfer to the following bank account +PaymentByTransferOnThisBankAccount=Plaćanje na sljedeći bankovni račun VATIsNotUsedForInvoice=Ne primjenjivo VAT čl.-293B CGI-a LawApplicationPart1=Po primjeni zakona 80.335 od 12.05.80 LawApplicationPart2=Roba ostaje vlasništvo @@ -518,7 +533,7 @@ InvoiceSituationDesc=Kreiranje nove etapu koja prati postojeću SituationAmount=Iznos računa etape (net) SituationDeduction=Oduzimanje po etapama ModifyAllLines=Izmjeni sve stavke -CreateNextSituationInvoice=Kreiraj sljedeću etapu +CreateNextSituationInvoice=Izradi sljedeću etapu ErrorFindNextSituationInvoice=Error unable to find next situation cycle ref ErrorOutingSituationInvoiceOnUpdate=Unable to outing this situation invoice. ErrorOutingSituationInvoiceCreditNote=Unable to outing linked credit note. diff --git a/htdocs/langs/hr_HR/bookmarks.lang b/htdocs/langs/hr_HR/bookmarks.lang index b6ab8f9613d..fc2ceb8024c 100644 --- a/htdocs/langs/hr_HR/bookmarks.lang +++ b/htdocs/langs/hr_HR/bookmarks.lang @@ -6,15 +6,15 @@ ListOfBookmarks=Lista zabilješki EditBookmarks=Prikaži/izmjeni zabilješke NewBookmark=Nova zabilješka ShowBookmark=Prikaži zabilješku -OpenANewWindow=Otvori novi prozor -ReplaceWindow=Zamjeni trenutno prozor -BookmarkTargetNewWindowShort=Novi prozor -BookmarkTargetReplaceWindowShort=Trenutno prozor -BookmarkTitle=Naziv zabilješke +OpenANewWindow=Open a new tab +ReplaceWindow=Replace current tab +BookmarkTargetNewWindowShort=New tab +BookmarkTargetReplaceWindowShort=Current tab +BookmarkTitle=Bookmark name UrlOrLink=URL BehaviourOnClick=Behaviour when a bookmark URL is selected -CreateBookmark=Kreiraj zabilješku -SetHereATitleForLink=Postavi naslov za zabilješku -UseAnExternalHttpLinkOrRelativeDolibarrLink=Koristi eksterni http URL ili relativni Dolibarr URL -ChooseIfANewWindowMustBeOpenedOnClickOnBookmark=Odaberite ako se povezana stranica mora/ne mora otvoriti u novom prozoru +CreateBookmark=Izradi zabilješku +SetHereATitleForLink=Set a name for the bookmark +UseAnExternalHttpLinkOrRelativeDolibarrLink=Use an external/absolute link (https://URL) or an internal/relative link (/DOLIBARR_ROOT/htdocs/...) +ChooseIfANewWindowMustBeOpenedOnClickOnBookmark=Choose if the linked page should open in the current tab or a new tab BookmarksManagement=Upravljanje zabilješkama diff --git a/htdocs/langs/hr_HR/boxes.lang b/htdocs/langs/hr_HR/boxes.lang index 6d56bdbf22b..784440f4f7d 100644 --- a/htdocs/langs/hr_HR/boxes.lang +++ b/htdocs/langs/hr_HR/boxes.lang @@ -9,7 +9,7 @@ BoxLastCustomerBills=Latest Customer invoices BoxOldestUnpaidCustomerBills=Najstariji neplaćeni račun kupca BoxOldestUnpaidSupplierBills=Oldest unpaid vendor invoices BoxLastProposals=Zadnja ponuda -BoxLastProspects=Zadnji izmjenjeni potencijalni kupci +BoxLastProspects=Zadnji izmjenjeni mogući kupci BoxLastCustomers=Zadnji promjenjei kupci BoxLastSuppliers=Zadnji promjenjeni dobavljači BoxLastCustomerOrders=Latest sales orders diff --git a/htdocs/langs/hr_HR/categories.lang b/htdocs/langs/hr_HR/categories.lang index 8e19e62f594..f383628a932 100644 --- a/htdocs/langs/hr_HR/categories.lang +++ b/htdocs/langs/hr_HR/categories.lang @@ -3,7 +3,7 @@ Rubrique=Kategorija Rubriques=Kategorije RubriquesTransactions=Tags/Categories of transactions categories=kategorije -NoCategoryYet=Nije kreirana kategorija ovog tipa +NoCategoryYet=Skupina ove vrste nije izrađena In=U AddIn=Dodaj u modify=promjeni @@ -22,8 +22,8 @@ CatList=Popis kategorija NewCategory=Nova kategorija ModifCat=Promjeni kategoriju CatCreated=Kategorija kreirana -CreateCat=Kreiraj kategoriju -CreateThisCat=Kreiraj ovu kategoriju +CreateCat=Izradi kategoriju +CreateThisCat=Izradi ovu kategoriju NoSubCat=Nema podkategorije. SubCatOf=Podkategorija FoundCats=Pronađene kategorije diff --git a/htdocs/langs/hr_HR/commercial.lang b/htdocs/langs/hr_HR/commercial.lang index a6dffff41bb..7bf167c2068 100644 --- a/htdocs/langs/hr_HR/commercial.lang +++ b/htdocs/langs/hr_HR/commercial.lang @@ -1,14 +1,14 @@ # Dolibarr language file - Source file is en_US - commercial Commercial=Trgovina -CommercialArea=Sučelje trgovine +CommercialArea=Trgovina Customer=Kupac Customers=Kupci Prospect=Potencijalni kupac -Prospects=Potencijalni kupci +Prospects=Mogući kupci DeleteAction=Obriši događaj NewAction=Novi događaj -AddAction=Kreiraj događaj -AddAnAction=Kreiraj događaj +AddAction=Izradi događaj +AddAnAction=Izradi događaj AddActionRendezVous=Kreirajte sastanak ConfirmDeleteAction=Are you sure you want to delete this event? CardAction=Kartica događaja @@ -27,15 +27,15 @@ SalesRepresentativeSignature=Prodajni predstavnik (potpis) NoSalesRepresentativeAffected=Nije dodjeljen prodajni predstavnik ShowCustomer=Prikaži kupca ShowProspect=Prikaži potencijalnog kupca -ListOfProspects=Lista potencijalnih kupaca -ListOfCustomers=Lista kupaca +ListOfProspects=Popis mogućih kupaca +ListOfCustomers=Popis kupaca LastDoneTasks=Latest %s completed actions LastActionsToDo=Najstarijih %s nezavršenih akcija DoneAndToDoActions=Završeni i za odraditi DoneActions=Završeni događaji ToDoActions=Nedovršeni događaji SendPropalRef=Ponuda %s -SendOrderRef=Predaja narudžbe %s +SendOrderRef=Narudžba %s StatusNotApplicable=Nije primjenjivo StatusActionToDo=Napraviti StatusActionDone=Završeno @@ -59,7 +59,7 @@ ActionAC_FAC=Pošalji račun kupca poštom ActionAC_REL=Pošalji narudđbu kupca putem pošte (podsjetnik) ActionAC_CLO=Zatvoren ActionAC_EMAILING=Masovno slanje e-pošte -ActionAC_COM=Pošalji narudžbu kupca putem pošte +ActionAC_COM=Send sales order by mail ActionAC_SHIP=Pošalji dostavu putem pošte ActionAC_SUP_ORD=Pošalji narudžbenicu e-poštom ActionAC_SUP_INV=Send vendor invoice by mail diff --git a/htdocs/langs/hr_HR/companies.lang b/htdocs/langs/hr_HR/companies.lang index a8189128d76..f5e548f5e79 100644 --- a/htdocs/langs/hr_HR/companies.lang +++ b/htdocs/langs/hr_HR/companies.lang @@ -20,8 +20,8 @@ IdThirdParty=Oznaka treće osobe IdCompany=Oznaka tvrtke IdContact=Oznaka kontakta Contacts=Kontakti/Adrese -ThirdPartyContacts=Third-party contacts -ThirdPartyContact=Third-party contact/address +ThirdPartyContacts=Kontakti treće osobe +ThirdPartyContact=Kontakt/adresa treće osobe Company=Tvrtka CompanyName=Naziv tvrtke AliasNames=Alias (komercijala, zaštitni znak, ...) @@ -29,17 +29,17 @@ AliasNameShort=Alias Name Companies=Kompanije CountryIsInEEC=Country is inside the European Economic Community PriceFormatInCurrentLanguage=Price display format in the current language and currency -ThirdPartyName=Third-party name +ThirdPartyName=Naziv treće osobe ThirdPartyEmail=Third-party email -ThirdParty=Third-party -ThirdParties=Third-parties +ThirdParty=Treća osoba +ThirdParties=Treće osobe ThirdPartyProspects=Potencijalni kupac -ThirdPartyProspectsStats=Potencijalni kupci +ThirdPartyProspectsStats=Mogući kupci ThirdPartyCustomers=Kupci ThirdPartyCustomersStats=Kupci ThirdPartyCustomersWithIdProf12=Kupci sa %s ili %s ThirdPartySuppliers=Vendors -ThirdPartyType=Third-party type +ThirdPartyType=Vrsta treće osobe Individual=Privatna osoba ToCreateContactWithSameName=Will automatically create a contact/address with same information as the third party under the third party. In most cases, even if your third party is a physical person, creating a third party alone is enough. ParentCompany=Matična tvrtka @@ -111,7 +111,7 @@ ProfId5Short=Prof. id 5 ProfId6Short=Prof. id 6 ProfId1=Sjedište banke ProfId2=Tekući račun -ProfId3=VAT N° +ProfId3=PDV broj ProfId4=Upis ProfId5=MBS ProfId6=MB @@ -257,8 +257,8 @@ ProfId1DZ=RC ProfId2DZ=Art. ProfId3DZ=NIF ProfId4DZ=NIS -VATIntra=VAT ID -VATIntraShort=VAT ID +VATIntra=OIB +VATIntraShort=OIB VATIntraSyntaxIsValid=Sintaksa je u redu VATReturn=VAT return ProspectCustomer=Potencijalni / Kupac @@ -273,7 +273,7 @@ CompanyHasRelativeDiscount=Ovaj kupac ima predefiniran popust od %s%% CompanyHasNoRelativeDiscount=Ovaj kupac nema predefiniran relativni popust HasRelativeDiscountFromSupplier=You have a default discount of %s%% from this vendor HasNoRelativeDiscountFromSupplier=You have no default relative discount from this vendor -CompanyHasAbsoluteDiscount=This customer has discounts available (credits notes or down payments) for %s %s +CompanyHasAbsoluteDiscount=Ovaj kupac ima raspoloživih popusta (knjižnih odobrenja ili predujmova) u iznosu od%s %s CompanyHasDownPaymentOrCommercialDiscount=This customer has discounts available (commercial, down payments) for %s %s CompanyHasCreditNote=Ovaj kupac još uvijek ima odobrenje za %s %s HasNoAbsoluteDiscountFromSupplier=You have no discount credit available from this vendor @@ -286,20 +286,20 @@ CustomerAbsoluteDiscountMy=Absolute customer discounts (granted by yourself) SupplierAbsoluteDiscountAllUsers=Absolute vendor discounts (entered by all users) SupplierAbsoluteDiscountMy=Absolute vendor discounts (entered by yourself) DiscountNone=Ništa -Vendor=Vendor -Supplier=Vendor -AddContact=Kreiraj kontakt +Vendor=Dobavljač +Supplier=Dobavljač +AddContact=Izradi kontakt AddContactAddress=Izradi kontakt/adresu EditContact=Uredi kontakt EditContactAddress=Uredi kontakt/adresu Contact=Kontakt ContactId=ID kontakta -ContactsAddresses=Kontakt/adrese +ContactsAddresses=Kontakti/adrese FromContactName=Ime: NoContactDefinedForThirdParty=Nema kontakta za ovog komitenta NoContactDefined=Nije definiran kontakt DefaultContact=Predefinirani kontakt/adresa -AddThirdParty=Kreiraj komitenta +AddThirdParty=Izradi komitenta DeleteACompany=Izbriši tvrtku PersonalInformations=Osobni podaci AccountancyCode=Obračunski račun @@ -321,7 +321,7 @@ ListOfThirdParties=Popis trećih osoba ShowCompany=Show Third Party ShowContact=Prikaži kontakt ContactsAllShort=Sve(bez filtera) -ContactType=Tip kontakta +ContactType=Vrsta kontakta ContactForOrders=Kontakt narudžbe ContactForOrdersOrShipments=Kontakt narudžbe ili pošiljke ContactForProposals=Kontakt ponude @@ -333,7 +333,7 @@ NoContactForAnyProposal=Ovaj kontakt nije kontakt za bilo koju ponudu NoContactForAnyContract=Ovaj kontakt nije kontakt za nikakav ugovor NoContactForAnyInvoice=Ovaj kontakt nije kontakt za nikakav račun NewContact=Novi kontakt -NewContactAddress=New Contact/Address +NewContactAddress=Novi kontakt/adresa MyContacts=Moji kontakti Capital=Kapital CapitalOf=Temeljna vrijednost %s @@ -381,18 +381,18 @@ ChangeNeverContacted=Promjeni status u 'nikad kontaktiran' ChangeToContact=Promjeni status u 'Za kontaktiranje' ChangeContactInProcess=Promjeni status u 'kontakt u tijeku' ChangeContactDone=Promjeni status u 'kontaktiran' -ProspectsByStatus=Potencijalni kupci po statusu +ProspectsByStatus=Mogući kupci po statusu NoParentCompany=Ništa ExportCardToFormat=Izvezi karticu u formatu ContactNotLinkedToCompany=Kontakt nije povezan ni sa jednim komitentom DolibarrLogin=Dolibarr korisničko ime NoDolibarrAccess=Nema pristup Dolibarr-u -ExportDataset_company_1=Third-parties (companies/foundations/physical people) and their properties +ExportDataset_company_1=Treće osobe\n(tvrtke/zaklade/fizičke osobe) i njihove osobine ExportDataset_company_2=Contacts and their properties -ImportDataset_company_1=Third-parties and their properties +ImportDataset_company_1=Treće osobe i njihove osobine ImportDataset_company_2=Third-parties additional contacts/addresses and attributes -ImportDataset_company_3=Third-parties Bank accounts -ImportDataset_company_4=Third-parties Sales representatives (assign sales representatives/users to companies) +ImportDataset_company_3=Bankovni računi trećih osoba +ImportDataset_company_4=Prodajni predstavnici za treće osobe (dodjela predstavnika/korisnika za tvrtke) PriceLevel=Price Level PriceLevelLabels=Price Level Labels DeliveryAddress=Adresa dostave @@ -407,9 +407,9 @@ FiscalYearInformation=Fiscal Year FiscalMonthStart=Početni mjesec fiskalne godine YouMustAssignUserMailFirst=You must create an email for this user prior to being able to add an email notification. YouMustCreateContactFirst=Kako biste bili u mogućnosti dodavanja obavijesti e-poštom, prvo morate definirati kontakt s valjanom adresom e-pošte za komitenta -ListSuppliersShort=List of Vendors -ListProspectsShort=List of Prospects -ListCustomersShort=List of Customers +ListSuppliersShort=Popis dobavljača +ListProspectsShort=Popis mogućih kupaca +ListCustomersShort=Popis kupaca ThirdPartiesArea=Treće osobe/Kontakti LastModifiedThirdParties=Zadnjih %s izmijenjenih trećih osoba UniqueThirdParties=Ukupno trećih osoba @@ -435,7 +435,7 @@ ErrorThirdpartiesMerge=Došlo je do greške tijekom brisanja treće osobe. Molim NewCustomerSupplierCodeProposed=Customer or Vendor code already used, a new code is suggested #Imports PaymentTypeCustomer=Payment Type - Customer -PaymentTermsCustomer=Payment Terms - Customer +PaymentTermsCustomer=Rok plaćanja - kupac PaymentTypeSupplier=Payment Type - Vendor PaymentTermsSupplier=Payment Term - Vendor MulticurrencyUsed=Use Multicurrency diff --git a/htdocs/langs/hr_HR/compta.lang b/htdocs/langs/hr_HR/compta.lang index b3076decbe1..1b5b6ba12c9 100644 --- a/htdocs/langs/hr_HR/compta.lang +++ b/htdocs/langs/hr_HR/compta.lang @@ -70,7 +70,7 @@ SocialContributions=Društveni ili fiskanlni porezi SocialContributionsDeductibles=Odbitak društveni ili fiskalni porezi SocialContributionsNondeductibles=Neodbijajući društveni ili fiskalni porezi LabelContrib=Oznaka doprinosa -TypeContrib=Tip doprinosa +TypeContrib=Vrsta doprinosa MenuSpecialExpenses=Specijalni troškovi MenuTaxAndDividends=Porezi i dividende MenuSocialContributions=Društveni/fiskalni porezi @@ -166,7 +166,7 @@ RulesAmountOnInOutBookkeepingRecord=It includes record in your Ledger with accou RulesResultBookkeepingPredefined=It includes record in your Ledger with accounting accounts that has the group "EXPENSE" or "INCOME" RulesResultBookkeepingPersonalized=It show record in your Ledger with accounting accounts grouped by personalized groups SeePageForSetup=See menu %s for setup -DepositsAreNotIncluded=- Down payment invoices are not included +DepositsAreNotIncluded=- Računi za predujam nisu uključeni DepositsAreIncluded=- Down payment invoices are included LT1ReportByCustomers=Report tax 2 by third party LT2ReportByCustomers=Report tax 3 by third party @@ -215,9 +215,9 @@ ByProductsAndServices=By product and service RefExt=Vanjska ref. ToCreateAPredefinedInvoice=Za kreiranje predloška računa, kreirajte stadardni račun, onda, bez ovjeravanja, kliknite na gumb "%s" LinkedOrder=Poveži s narudžbom -Mode1=Metoda 1 -Mode2=Metoda 2 -CalculationRuleDesc=Za izračunavanje poreza, postoje dvije metode:
Metoda 1 je zaokruživanje PDV za svaku stavku te njihov zbroj.
Metoda 2 je zbrajanje PDV za svaku stavku te zaokruživanje rezultata.
Konačni rezultat se može razlikovati za par lipa. Zadani način je način %s. +Mode1=Način 1 +Mode2=Način 2 +CalculationRuleDesc=Za izračunavanje poreza, postoje dvije metode:
Način 1 je zaokruživanje PDV za svaku stavku te njihov zbroj.
Način 2 je zbrajanje PDV za svaku stavku te zaokruživanje rezultata.
Konačni rezultat se može razlikovati za par lipa. Zadani način je način %s. CalculationRuleDescSupplier=According to vendor, choose appropriate method to apply same calculation rule and get same result expected by your vendor. TurnoverPerProductInCommitmentAccountingNotRelevant=The report of Turnover collected per product is not available. This report is only available for turnover invoiced. TurnoverPerSaleTaxRateInCommitmentAccountingNotRelevant=The report of Turnover collected per sale tax rate is not available. This report is only available for turnover invoiced. diff --git a/htdocs/langs/hr_HR/cron.lang b/htdocs/langs/hr_HR/cron.lang index 9e8813d0f36..c2e49dacddf 100644 --- a/htdocs/langs/hr_HR/cron.lang +++ b/htdocs/langs/hr_HR/cron.lang @@ -2,7 +2,7 @@ # About page # Right Permission23101 = Pročitaj planirani posao -Permission23102 = Kreiraj/promjeni planirani posao +Permission23102 = Izradi/promjeni planirani posao Permission23103 = Obriši planirani posao Permission23104 = Pokreni planirani posao # Admin @@ -37,13 +37,13 @@ CronDtLastLaunch=Početni datum zadnjeg pokretanja CronDtLastResult=Datum završetka zadnjeg pokretanja CronFrequency=Učestalost CronClass=Klasa -CronMethod=Metoda +CronMethod=Način CronModule=Modul CronNoJobs=Nema registriranih poslova CronPriority=Prioritet CronLabel=Naziv -CronNbRun=No. launches -CronMaxRun=Max number launch +CronNbRun=Number of launches +CronMaxRun=Maximum number of launches CronEach=Svakih JobFinished=Posao pokrenut i završen #Page card @@ -67,11 +67,11 @@ CronObjectHelp=The object name to load.
For example to call the fetch metho CronMethodHelp=The object method to launch.
For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for method is
fetch CronArgsHelp=The method arguments.
For example to call the fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value for paramters can be
0, ProductRef CronCommandHelp=Sistemska komanda za pokretanje -CronCreateJob=Kreiraj novi planirani posao +CronCreateJob=Izradi novi planirani posao CronFrom=Od # Info # Common -CronType=Tip posla +CronType=Vrsta posla CronType_method=Call method of a PHP Class CronType_command=Shell command CronCannotLoadClass=Cannot load class file %s (to use class %s) diff --git a/htdocs/langs/hr_HR/donations.lang b/htdocs/langs/hr_HR/donations.lang index c2d8cd40d04..134409d1d52 100644 --- a/htdocs/langs/hr_HR/donations.lang +++ b/htdocs/langs/hr_HR/donations.lang @@ -1,15 +1,15 @@ # Dolibarr language file - Source file is en_US - donations Donation=Donacija Donations=Donacije -DonationRef=Ref. donacije +DonationRef=Broj donacije Donor=Donator -AddDonation=Kreiraj donaciju +AddDonation=Izradi donaciju NewDonation=Nova donacija DeleteADonation=Obriši donaciju ConfirmDeleteADonation=Are you sure you want to delete this donation? ShowDonation=Prikaži donaciju PublicDonation=Javna donacija -DonationsArea=Sučelje donacija +DonationsArea=Donacije DonationStatusPromiseNotValidated=Skica obečanja DonationStatusPromiseValidated=Ovjeri obečanje DonationStatusPaid=Primljene donacije diff --git a/htdocs/langs/hr_HR/errors.lang b/htdocs/langs/hr_HR/errors.lang index 6dddf9bb0ce..afe8c61f603 100644 --- a/htdocs/langs/hr_HR/errors.lang +++ b/htdocs/langs/hr_HR/errors.lang @@ -21,7 +21,7 @@ ErrorFailToDeleteDir=Failed to delete directory '%s'. ErrorFailToMakeReplacementInto=Failed to make replacement into file '%s'. ErrorFailToGenerateFile=Failed to generate file '%s'. ErrorThisContactIsAlreadyDefinedAsThisType=This contact is already defined as contact for this type. -ErrorCashAccountAcceptsOnlyCashMoney=Ovaj bankovni račun je gotovinski račun, te kao takav prihvača samo gotovinske uplate. +ErrorCashAccountAcceptsOnlyCashMoney=Ovaj bankovni račun je gotovinski te prihvaća samo gotovinske uplate. ErrorFromToAccountsMustDiffers=Izvorni i odredišni bankovni računi moraju biti različiti. ErrorBadThirdPartyName=Bad value for third-party name ErrorProdIdIsMandatory=The %s is mandatory @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/hr_HR/exports.lang b/htdocs/langs/hr_HR/exports.lang index abd5d73c9e6..b461078ecab 100644 --- a/htdocs/langs/hr_HR/exports.lang +++ b/htdocs/langs/hr_HR/exports.lang @@ -1,59 +1,59 @@ # Dolibarr language file - Source file is en_US - exports -ExportsArea=Exports area -ImportArea=Import area -NewExport=New export -NewImport=New import +ExportsArea=Exports +ImportArea=Import +NewExport=New Export +NewImport=New Import ExportableDatas=Exportable dataset ImportableDatas=Importable dataset SelectExportDataSet=Choose dataset you want to export... SelectImportDataSet=Choose dataset you want to import... -SelectExportFields=Choose fields you want to export, or select a predefined export profile -SelectImportFields=Choose source file fields you want to import and their target field in database by moving them up and down with anchor %s, or select a predefined import profile: +SelectExportFields=Choose the fields you want to export, or select a predefined export profile +SelectImportFields=Choose the source file fields you want to import and their target field in database by moving them up and down with anchor %s, or select a predefined import profile: NotImportedFields=Fields of source file not imported -SaveExportModel=Save this export profile if you plan to reuse it later... -SaveImportModel=Save this import profile if you plan to reuse it later... +SaveExportModel=Save your selections as an export profile/template (for reuse). +SaveImportModel=Save this import profile (for reuse) ... ExportModelName=Export profile name -ExportModelSaved=Export profile saved under name %s. +ExportModelSaved=Export profile saved as %s. ExportableFields=Exportable fields ExportedFields=Exported fields ImportModelName=Import profile name -ImportModelSaved=Import profile saved under name %s. +ImportModelSaved=Import profile saved as %s. DatasetToExport=Dataset to export DatasetToImport=Import file into dataset ChooseFieldsOrdersAndTitle=Choose fields order... FieldsTitle=Fields title FieldTitle=Field title -NowClickToGenerateToBuildExportFile=Now, select file format in combo box and click on "Generate" to build export file... -AvailableFormats=Available formats +NowClickToGenerateToBuildExportFile=Now, select the file format in the combo box and click on "Generate" to build the export file... +AvailableFormats=Available Formats LibraryShort=Biblioteka Step=Step -FormatedImport=Import assistant -FormatedImportDesc1=This area allows to import personalized data, using an assistant to help you in process without technical knowledge. -FormatedImportDesc2=First step is to choose a king of data you want to load, then file to load, then to choose which fields you want to load. -FormatedExport=Export assistant -FormatedExportDesc1=This area allows to export personalized data, using an assistant to help you in process without technical knowledge. -FormatedExportDesc2=First step is to choose a predefined dataset, then to choose which fields you want in your result files, and which order. -FormatedExportDesc3=When data to export are selected, you can define output file format you want to export your data to. +FormatedImport=Import Assistant +FormatedImportDesc1=This module allows you to update existing data or add new objects into the database from a file without technical knowledge, using an assistant. +FormatedImportDesc2=First step is to choose the kind of data you want to import, then the format of the source file, then the fields you want to import. +FormatedExport=Export Assistant +FormatedExportDesc1=These tools allow the export of personalized data using an assistant, to help you in the process without requiring technical knowledge. +FormatedExportDesc2=First step is to choose a predefined dataset, then which fields you want to export, and in which order. +FormatedExportDesc3=When data to export are selected, you can choose the format of the output file. Sheet=Sheet NoImportableData=No importable data (no module with definitions to allow data imports) FileSuccessfullyBuilt=File generated SQLUsedForExport=SQL Request used to build export file LineId=Id of line LineLabel=Label of line -LineDescription=Description of line +LineDescription=Opis redka LineUnitPrice=Unit price of line LineVATRate=VAT Rate of line LineQty=Quantity for line -LineTotalHT=Amount net of tax for line +LineTotalHT=Iznos bez PDV-a za redak LineTotalTTC=Amount with tax for line LineTotalVAT=Amount of VAT for line TypeOfLineServiceOrProduct=Type of line (0=product, 1=service) FileWithDataToImport=File with data to import FileToImport=Source file to import -FileMustHaveOneOfFollowingFormat=File to import must have one of following format -DownloadEmptyExample=Download example of empty source file -ChooseFormatOfFileToImport=Choose file format to use as import file format by clicking on picto %s to select it... -ChooseFileToImport=Upload file then click on picto %s to select file as source import file... +FileMustHaveOneOfFollowingFormat=File to import must have one of following formats +DownloadEmptyExample=Download template file with field content information (* are mandatory fields) +ChooseFormatOfFileToImport=Choose the file format to use as import file format by clicking on the %s icon to select it... +ChooseFileToImport=Upload file then click on the %s icon to select file as source import file... SourceFileFormat=Source file format FieldsInSourceFile=Fields in source file FieldsInTargetDatabase=Target fields in Dolibarr database (bold=mandatory) @@ -68,55 +68,55 @@ FieldsTarget=Targeted fields FieldTarget=Targeted field FieldSource=Source field NbOfSourceLines=Number of lines in source file -NowClickToTestTheImport=Check import parameters you have defined. If they are correct, click on button "%s" to launch a simulation of import process (no data will be changed in your database, it's only a simulation for the moment)... -RunSimulateImportFile=Launch the import simulation +NowClickToTestTheImport=Check that the file format (field and string delimiters) of your file matches the options shown and that you have omitted the header line, or these will be flagged as errors in the following simulation.
Click on the "%s" button to run a check of the file structure/contents and simulate the import process.
No data will be changed in your database. +RunSimulateImportFile=Run Import Simulation FieldNeedSource=This field requires data from the source file SomeMandatoryFieldHaveNoSource=Some mandatory fields have no source from data file InformationOnSourceFile=Information on source file InformationOnTargetTables=Information on target fields SelectAtLeastOneField=Switch at least one source field in the column of fields to export SelectFormat=Choose this import file format -RunImportFile=Launch import file -NowClickToRunTheImport=Check result of import simulation. If everything is ok, launch the definitive import. -DataLoadedWithId=All data will be loaded with the following import id: %s -ErrorMissingMandatoryValue=Mandatory data is empty in source file for field %s. -TooMuchErrors=There is still %s other source lines with errors but output has been limited. -TooMuchWarnings=There is still %s other source lines with warnings but output has been limited. +RunImportFile=Import Data +NowClickToRunTheImport=Check the results of the import simulation. Correct any errors and re-test.
When the simulation reports no errors you may proceed to import the data into the database. +DataLoadedWithId=The imported data will have an additional field in each database table with this import id: %s, to allow it to be searchable in the case of investigating a problem related to this import. +ErrorMissingMandatoryValue=Mandatory data is empty in the source file for field %s. +TooMuchErrors=There are still %s other source lines with errors but output has been limited. +TooMuchWarnings=There are still %s other source lines with warnings but output has been limited. EmptyLine=Empty line (will be discarded) -CorrectErrorBeforeRunningImport=You must first correct all errors before running definitive import. +CorrectErrorBeforeRunningImport=You must correct all errors before running the definitive import. FileWasImported=File was imported with number %s. -YouCanUseImportIdToFindRecord=You can find all imported record in your database by filtering on field import_key='%s'. +YouCanUseImportIdToFindRecord=You can find all the imported records in your database by filtering on field import_key='%s'. NbOfLinesOK=Number of lines with no errors and no warnings: %s. NbOfLinesImported=Number of lines successfully imported: %s. DataComeFromNoWhere=Value to insert comes from nowhere in source file. DataComeFromFileFieldNb=Value to insert comes from field number %s in source file. -DataComeFromIdFoundFromRef=Value that comes from field number %s of source file will be used to find id of parent object to use (So the objet %s that has the ref. from source file must exists into Dolibarr). -DataComeFromIdFoundFromCodeId=Code that comes from field number %s of source file will be used to find id of parent object to use (So the code from source file must exists into dictionary %s). Note that if you know id, you can also use it into source file instead of code. Import should work in both cases. +DataComeFromIdFoundFromRef=Value that comes from field number %s of source file will be used to find the id of the parent object to use (so the object %s that has the ref. from source file must exist in the database). +DataComeFromIdFoundFromCodeId=Code that comes from field number %s of source file will be used to find the id of the parent object to use (so the code from source file must exist in the dictionary %s). Note that if you know the id, you can also use it in the source file instead of the code. Import should work in both cases. DataIsInsertedInto=Data coming from source file will be inserted into the following field: -DataIDSourceIsInsertedInto=The id of parent object found using the data in source file, will be inserted into the following field: +DataIDSourceIsInsertedInto=The id of parent object was found using the data in the source file, will be inserted into the following field: DataCodeIDSourceIsInsertedInto=The id of parent line found from code, will be inserted into following field: SourceRequired=Data value is mandatory SourceExample=Example of possible data value ExampleAnyRefFoundIntoElement=Any ref found for element %s ExampleAnyCodeOrIdFoundIntoDictionary=Any code (or id) found into dictionary %s -CSVFormatDesc=Comma Separated Value file format (.csv).
This is a text file format where fields are separated by separator [ %s ]. If separator is found inside a field content, field is rounded by round character [ %s ]. Escape character to escape round character is [ %s ]. -Excel95FormatDesc=Excel file format (.xls)
This is native Excel 95 format (BIFF5). -Excel2007FormatDesc=Excel file format (.xlsx)
This is native Excel 2007 format (SpreadsheetML). +CSVFormatDesc=Comma Separated Value file format (.csv).
This is a text file format where fields are separated by a separator [ %s ]. If separator is found inside a field content, field is rounded by round character [ %s ]. Escape character to escape round character is [ %s ]. +Excel95FormatDesc=Excel file format (.xls)
This is the native Excel 95 format (BIFF5). +Excel2007FormatDesc=Excel file format (.xlsx)
This is the native Excel 2007 format (SpreadsheetML). TsvFormatDesc=Tab Separated Value file format (.tsv)
This is a text file format where fields are separated by a tabulator [tab]. ExportFieldAutomaticallyAdded=Field %s was automatically added. It will avoid you to have similar lines to be treated as duplicate record (with this field added, all lines will own their own id and will differ). -CsvOptions=Csv Options -Separator=Separator -Enclosure=Enclosure +CsvOptions=CSV format options +Separator=Field Separator +Enclosure=String Delimiter SpecialCode=Special code ExportStringFilter=%% allows replacing one or more characters in the text -ExportDateFilter=YYYY, YYYYMM, YYYYMMDD : filters by one year/month/day
YYYY+YYYY, YYYYMM+YYYYMM, YYYYMMDD+YYYYMMDD : filters over a range of years/months/days
> YYYY, > YYYYMM, > YYYYMMDD : filters on all following years/months/days
< YYYY, < YYYYMM, < YYYYMMDD : filters on all previous years/months/days +ExportDateFilter=YYYY, YYYYMM, YYYYMMDD: filters by one year/month/day
YYYY+YYYY, YYYYMM+YYYYMM, YYYYMMDD+YYYYMMDD: filters over a range of years/months/days
> YYYY, > YYYYMM, > YYYYMMDD: filters on all following years/months/days
< YYYY, < YYYYMM, < YYYYMMDD: filters on all previous years/months/days ExportNumericFilter=NNNNN filters by one value
NNNNN+NNNNN filters over a range of values
< NNNNN filters by lower values
> NNNNN filters by higher values ImportFromLine=Import starting from line number EndAtLineNb=End at line number -ImportFromToLine=Import line numbers (from - to) -SetThisValueTo2ToExcludeFirstLine=For example, set this value to 3 to exclude the 2 first lines -KeepEmptyToGoToEndOfFile=Keep this field empty to go up to the end of file -SelectPrimaryColumnsForUpdateAttempt=Select column(s) to use as primary key for update attempt +ImportFromToLine=Limit range (From - To) eg. to omit header line(s) +SetThisValueTo2ToExcludeFirstLine=For example, set this value to 3 to exclude the 2 first lines.
If the header lines are NOT omitted, this will result in multiple errors in the Import Simulation. +KeepEmptyToGoToEndOfFile=Keep this field empty to process all lines to the end of the file. +SelectPrimaryColumnsForUpdateAttempt=Select column(s) to use as primary key for an UPDATE import UpdateNotYetSupportedForThisImport=Update is not supported for this type of import (only insert) NoUpdateAttempt=No update attempt was performed, only insert ImportDataset_user_1=Users (employees or not) and properties @@ -127,7 +127,7 @@ FilteredFields=Filtered fields FilteredFieldsValues=Value for filter FormatControlRule=Format control rule ## imports updates -KeysToUseForUpdates=Key to use for updating data +KeysToUseForUpdates=Key (column) to use for updating existing data NbInsert=Number of inserted lines: %s NbUpdate=Number of updated lines: %s MultipleRecordFoundWithTheseFilters=Multiple records have been found with these filters: %s diff --git a/htdocs/langs/hr_HR/help.lang b/htdocs/langs/hr_HR/help.lang index 25e0f10a260..aba9b32e9b4 100644 --- a/htdocs/langs/hr_HR/help.lang +++ b/htdocs/langs/hr_HR/help.lang @@ -1,16 +1,16 @@ # Dolibarr language file - Source file is en_US - help CommunitySupport=Forum/Wiki podrška EMailSupport=Podrška e-poštom -RemoteControlSupport=Online real time / remote podrška +RemoteControlSupport=Online real-time / remote support OtherSupport=Ostala podrška ToSeeListOfAvailableRessources=Da biste kontaktirali/vidjeli raspoložive resurse: -HelpCenter=Help centar +HelpCenter=Help Center DolibarrHelpCenter=Dolibarr Help and Support Center ToGoBackToDolibarr=Otherwise, click here to continue to use Dolibarr. TypeOfSupport=Type of support TypeSupportCommunauty=Zajednica (besplatno) TypeSupportCommercial=Komercijalno -TypeOfHelp=Tip +TypeOfHelp=Vrsta NeedHelpCenter=Need help or support? Efficiency=Efikasnost TypeHelpOnly=Samo pomoć diff --git a/htdocs/langs/hr_HR/holiday.lang b/htdocs/langs/hr_HR/holiday.lang index b7b72669126..e47e5f49b5c 100644 --- a/htdocs/langs/hr_HR/holiday.lang +++ b/htdocs/langs/hr_HR/holiday.lang @@ -23,7 +23,7 @@ UserForApprovalFirstname=First name of approval user UserForApprovalLastname=Last name of approval user UserForApprovalLogin=Login of approval user DescCP=Opis -SendRequestCP=Kreiraj zahtjev odsustva +SendRequestCP=Izradi zahtjev odsustva DelayToRequestCP=Zahtjev odsustva mora biti kreiran najmanje %s dan(a) prije. MenuConfCP=Balance of leave SoldeCPUser=Leave balance is %s days. diff --git a/htdocs/langs/hr_HR/install.lang b/htdocs/langs/hr_HR/install.lang index d21db0da090..45c000ca09c 100644 --- a/htdocs/langs/hr_HR/install.lang +++ b/htdocs/langs/hr_HR/install.lang @@ -45,7 +45,7 @@ ForceHttps=Force secure connections (https) CheckToForceHttps=Check this option to force secure connections (https).
This requires that the web server is configured with an SSL certificate. DolibarrDatabase=Dolibarr Database DatabaseType=Database type -DriverType=Tip upr. programa +DriverType=Vrsta upr. programa Server=Server ServerAddressDescription=Name or ip address for the database server. Usually 'localhost' when the database server is hosted on the same server as the web server. ServerPortDescription=Database server port. Keep empty if unknown. diff --git a/htdocs/langs/hr_HR/interventions.lang b/htdocs/langs/hr_HR/interventions.lang index 202e8e47ad7..b0ce784e85b 100644 --- a/htdocs/langs/hr_HR/interventions.lang +++ b/htdocs/langs/hr_HR/interventions.lang @@ -3,13 +3,13 @@ Intervention=Intervencija Interventions=Intervencije InterventionCard=Kartica intervencije NewIntervention=Nova intervencija -AddIntervention=Kreiraj intervenciju +AddIntervention=Izradi intervenciju ChangeIntoRepeatableIntervention=Change to repeatable intervention ListOfInterventions=Popis intervencija ActionsOnFicheInter=Akcije na intervencije LastInterventions=Zadnjih %s intervencija AllInterventions=Sve intervencije -CreateDraftIntervention=Kreiraj skicu +CreateDraftIntervention=Izradi skicu InterventionContact=Kontakt za intervenciju DeleteIntervention=Obriši intervenciju ValidateIntervention=Potvrdi intervenciju diff --git a/htdocs/langs/hr_HR/main.lang b/htdocs/langs/hr_HR/main.lang index 8571f615495..fac8dcf0a66 100644 --- a/htdocs/langs/hr_HR/main.lang +++ b/htdocs/langs/hr_HR/main.lang @@ -58,7 +58,7 @@ ErrorNoRequestInError=Nema zahtjeva s greškom ErrorServiceUnavailableTryLater=Usluga trenutno nije dostupna. Pokušajte ponovo poslije. ErrorDuplicateField=Dvostruka vrijednost za jedno polje ErrorSomeErrorWereFoundRollbackIsDone=Pronađene su greške. Izmjene povućene. -ErrorConfigParameterNotDefined=Parameter %s is not defined in the Dolibarr config file conf.php. +ErrorConfigParameterNotDefined=Značajka %s nije određena u Dolibarr datoteci s postavkama conf.php. ErrorCantLoadUserFromDolibarrDatabase=Korisnik %s ne postoji u bazi Dolibarra ErrorNoVATRateDefinedForSellerCountry=Greška, za zemlju '%s' nisu upisane stope poreza ErrorNoSocialContributionForSellerCountry=Greška, za zemlju '%s' nisu upisani društveni/fiskalni porezi. @@ -170,7 +170,7 @@ Save=Spremi SaveAs=Spremi kao TestConnection=Provjera veze ToClone=Kloniraj -ConfirmClone=Choose data you want to clone: +ConfirmClone=Izaberite podatke koje želite klonirati: NoCloneOptionsSpecified=Podaci za kloniranje nisu izabrani. Of=od Go=Idi @@ -202,7 +202,7 @@ Password=Zaporka PasswordRetype=Ponovi zaporku NoteSomeFeaturesAreDisabled=Uzmite u obzir da je dosta mogućnosti i modula onemogućeno u ovom izlaganju. Name=Ime -NameSlashCompany=Name / Company +NameSlashCompany=Ime / Tvrtka Person=Osoba Parameter=Značajka Parameters=Značajke @@ -212,7 +212,7 @@ NewObject=Novi%s NewValue=Nova vrijednost CurrentValue=Trenutna vrijednost Code=Oznaka -Type=Tip +Type=Vrsta Language=Jezik MultiLanguage=Višejezični Note=Napomena @@ -223,8 +223,8 @@ Info=Dnevnik Family=Obitelj Description=Opis Designation=Opis -DescriptionOfLine=Description of line -DateOfLine=Date of line +DescriptionOfLine=Opis redka +DateOfLine=Datum redka DurationOfLine=Duration of line Model=Predložak dokumenta DefaultModel=Osnovni doc predložak @@ -350,13 +350,13 @@ AmountInvoiced=Zaračunati iznos AmountPayment=Iznos plaćanja AmountHTShort=Amount (excl.) AmountTTCShort=Iznos (s porezom) -AmountHT=Amount (excl. tax) +AmountHT=Iznos (bez PDV-a) AmountTTC=Iznos (s porezom) AmountVAT=Iznos poreza MulticurrencyAlreadyPaid=Već plaćeno, u izvornoj valuti MulticurrencyRemainderToPay=Preostalo za platiti, u izvornoj valuti MulticurrencyPaymentAmount=Iznos plaćanja, u izvornoj valuti -MulticurrencyAmountHT=Amount (excl. tax), original currency +MulticurrencyAmountHT=Iznos (bez PDV-a), prvotna valuta MulticurrencyAmountTTC=Iznos (s porezom), u izvornoj valuti MulticurrencyAmountVAT=Iznos poreza, u izvornoj valuti AmountLT1=Iznos poreza 2 @@ -374,8 +374,8 @@ TotalHTShort=Total (excl.) TotalHT100Short=Total 100%% (excl.) TotalHTShortCurrency=Total (excl. in currency) TotalTTCShort=Ukupno s PDV-om -TotalHT=Total (excl. tax) -TotalHTforthispage=Total (excl. tax) for this page +TotalHT=Ukupno bez PDV-a +TotalHTforthispage=Ukupno (bez PDV-a) na ovoj stranici Totalforthispage=Ukupno na ovoj stranici TotalTTC=Ukupno s PDV-om TotalTTCToYourCredit=Ukupno s porezom na vaš račun @@ -387,7 +387,7 @@ TotalLT1ES=Ukupno RE TotalLT2ES=Ukupno IRPF TotalLT1IN=Ukupno CGST TotalLT2IN=Ukupno SGST -HT=Excl. tax +HT=Bez PDV-a TTC=S porezom INCVATONLY=S PDV-om INCT=Zajedno sa svim porezima @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakti/adrese ove treće osobe AddressesForCompany=Adrese ove treće osobe ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Događaji vezani uz ovog člana ActionsOnProduct=Radnje vezane uz ovaj proizvod NActionsLate=%s kasni @@ -463,7 +464,7 @@ Duration=Trajanje TotalDuration=Ukupno trajanje Summary=Sažetak DolibarrStateBoard=Statistika baze podataka -DolibarrWorkBoard=Open Items +DolibarrWorkBoard=Otvorene stavke NoOpenedElementToProcess=Nema otvorenih radnji za provedbu Available=Dostupno NotYetAvailable=Nije još dostupno @@ -709,7 +710,7 @@ Notes=Bilješke AddNewLine=Dodaj novu stavku AddFile=Dodaj datoteku FreeZone=Ovaj proizvod/usluga nije predhodno upisan -FreeLineOfType=Free-text item, type: +FreeLineOfType=Slobodan upis, vrsta stavke: CloneMainAttributes=Kloniraj predmet sa svim glavnim svojstvima ReGeneratePDF=Re-generate PDF PDFMerge=Spoji PDF @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Poveži s ugovorom LinkToIntervention=Poveži s zahvatom +LinkToTicket=Link to ticket CreateDraft=Izradi skicu SetToDraft=Nazad na skice ClickToEdit=Klikni za uređivanje diff --git a/htdocs/langs/hr_HR/margins.lang b/htdocs/langs/hr_HR/margins.lang index 4f6f998b9e8..0ee046592c7 100644 --- a/htdocs/langs/hr_HR/margins.lang +++ b/htdocs/langs/hr_HR/margins.lang @@ -31,14 +31,14 @@ MARGIN_TYPE=Kupovno/troškovna cijena sugerirana za izračun marže MargeType1=Margin on Best vendor price MargeType2=Marža prema Procjenjenoj prosječnoj cijeni (PPC) MargeType3=Marža po cijeni troškova -MarginTypeDesc=* Margin on best buying price = Selling price - Best vendor price defined on product card
* Margin on Weighted Average Price (WAP) = Selling price - Product Weighted Average Price (WAP) or best supplier price if WAP not yet defined
* Margin on Cost price = Selling price - Cost price defined on product card or WAP if cost price not defined, or best supplier price if WAP not yet defined +MarginTypeDesc=* Margin on best buying price = Selling price - Best vendor price defined on product card
* Margin on Weighted Average Price (WAP) = Selling price - Product Weighted Average Price (WAP) or best vendor price if WAP not yet defined
* Margin on Cost price = Selling price - Cost price defined on product card or WAP if cost price not defined, or best vendor price if WAP not yet defined CostPrice=Cijena troška UnitCharges=Troškovi jedinice Charges=Troškovi -AgentContactType=Tip kontakta komercijalnog agenta +AgentContactType=Vrsta kontakta komercijalnog agenta AgentContactTypeDetails=Odredite koji tip kontakta (povezan na računu) će biti korišten za izvještaj marže po prodajnom predstavniku rateMustBeNumeric=Stopa mora biti brojčana vrijednost markRateShouldBeLesserThan100=Mark rate should be lower than 100 ShowMarginInfos=Prikaži infomacije o marži CheckMargins=Detalji marže -MarginPerSaleRepresentativeWarning=The report of margin per user use the link between third parties and sale representatives to calculate the margin of each sale representative. Because some thirdparties may not have any ddiated sale representative and some thirdparties may be linked to several, some amounts may not be included into this report (if there is no sale representative) and some may appear on different lines (for each sale representative). +MarginPerSaleRepresentativeWarning=The report of margin per user use the link between third parties and sale representatives to calculate the margin of each sale representative. Because some thirdparties may not have any dedicated sale representative and some third parties may be linked to several, some amounts may not be included into this report (if there is no sale representative) and some may appear on different lines (for each sale representative). diff --git a/htdocs/langs/hr_HR/members.lang b/htdocs/langs/hr_HR/members.lang index 49945d46b38..ce9538cc391 100644 --- a/htdocs/langs/hr_HR/members.lang +++ b/htdocs/langs/hr_HR/members.lang @@ -35,8 +35,8 @@ EndSubscription=Kraj pretplate SubscriptionId=Pretplata ID MemberId=Član ID NewMember=Novi član -MemberType=Tip člana -MemberTypeId=Tip ID člana +MemberType=Vrsta člana +MemberTypeId=Vrsta ID člana MemberTypeLabel=Oznaka tipa člana MembersTypes=Tipovi članova MemberStatusDraft=Skica (potrebna potvrditi) @@ -68,7 +68,7 @@ SubscriptionLate=Kasni SubscriptionNotReceived=Pretplata nikad zaprimljena ListOfSubscriptions=Popis pretplata SendCardByMail=Send card by email -AddMember=Kreiraj člana +AddMember=Izradi člana NoTypeDefinedGoToSetup=Nema definiranih tipova člana. Idite na izbornik "Tipovi članova" NewMemberType=Novi tip člana WelcomeEMail=Welcome email @@ -104,7 +104,7 @@ Int=Int DateAndTime=Datum i vrijeme PublicMemberCard=Javna članska kartica SubscriptionNotRecorded=Pretplata nije pohranjena -AddSubscription=Kreiraj pretplatu +AddSubscription=Izradi pretplatu ShowSubscription=Prikaži pretplatu # Label of email templates SendingAnEMailToMember=Sending information email to member @@ -149,7 +149,7 @@ MoreActions=Dodatna akcija za snimanje MoreActionsOnSubscription=Dodatne akcije, predloži kao zadano kod pohrane pretplate MoreActionBankDirect=Create a direct entry on bank account MoreActionBankViaInvoice=Create an invoice, and a payment on bank account -MoreActionInvoiceOnly=Kreiraj račun bez plačanja +MoreActionInvoiceOnly=Izradi račun bez plačanja LinkToGeneratedPages=Genereiraj vizit kartu LinkToGeneratedPagesDesc=This screen allows you to generate PDF files with business cards for all your members or a particular member. DocForAllMembersCards=Generiraj vizit karte za sve članove diff --git a/htdocs/langs/hr_HR/opensurvey.lang b/htdocs/langs/hr_HR/opensurvey.lang index ba2ca276e1c..46358d63a49 100644 --- a/htdocs/langs/hr_HR/opensurvey.lang +++ b/htdocs/langs/hr_HR/opensurvey.lang @@ -3,15 +3,15 @@ Survey=Anketa Surveys=Ankete OrganizeYourMeetingEasily=Jednostavno organizirajte sastanke i ankete. Prvo odaberite tip ankete... NewSurvey=Nova anketa -OpenSurveyArea=Sučelje anketa +OpenSurveyArea=Ankete AddACommentForPoll=Možete dodati komentar u anketu... AddComment=Dodaj komentar -CreatePoll=Kreiraj anketu +CreatePoll=Izradi anketu PollTitle=Naziv ankete ToReceiveEMailForEachVote=Primi e-poštu za svaki glas TypeDate=Vremenski tip TypeClassic=Standardni tip -OpenSurveyStep2=Odaberite datume između slobodnih dana (sivo). Odabarni dani su zeleni. Odabir možete poništiti tako da kliknete ponovo na dan koji ste odabrali +OpenSurveyStep2=Select your dates among the free days (grey). The selected days are green. You can unselect a day previously selected by clicking again on it RemoveAllDays=Makni sve dane CopyHoursOfFirstDay=Kopiraj sate prvog dana RemoveAllHours=Makni sve sate @@ -25,8 +25,8 @@ ConfirmRemovalOfPoll=Jeste li sigurni da želite maknuti ovo glasanje (i sve gla RemovePoll=Makni anketu UrlForSurvey=URL za direktni pristup anketi PollOnChoice=Kreirate anketu s više odabira u anketi. Prvo unesite sve moguće odabire za vašu anketu: -CreateSurveyDate=Kreiraj vremensku anketu -CreateSurveyStandard=Kreiraj standardnu anketu +CreateSurveyDate=Izradi vremensku anketu +CreateSurveyStandard=Izradi standardnu anketu CheckBox=Jednostavni checkbox YesNoList=Popis (prazno/da/ne) PourContreList=Popis (prazno/za/protiv) @@ -35,7 +35,7 @@ TitleChoice=Oznaka odabira ExportSpreadsheet=Izvezi rezultate u tabelu ExpireDate=Ograničen datum NbOfSurveys=Broj anketa -NbOfVoters=Br. glasača +NbOfVoters=No. of voters SurveyResults=Rezultati PollAdminDesc=Niste ovlašteni za promjenu svih linija u anketi. Možete maknuti kolonu ili liniju sa %s. Također možete dodati novu kolonu sa %s. 5MoreChoices=Još 5 odabira @@ -49,7 +49,7 @@ votes=glas(ova) NoCommentYet=Nema komentara za anketu CanComment=Glasači mogu komentirati anketu CanSeeOthersVote=Glasači mogu vidjeti glasove drugih glasača -SelectDayDesc=Za svaki odabrani dan, možete odabrati, ili ne morate, sat sastanka u sljedećem formatu:
- prazno,
- "8h", "8H" ili "8:00" za početak sastanka,
- "8-11", "8h-11h", "8H-11H" ili "8:00-11:00" za početak i kraj sastanka,
- "8h15-11h15", "8H15-11H15" ili "8:15-11:15" za isto samo sa minutama. +SelectDayDesc=For each selected day, you can choose, or not, meeting hours in the following format:
- empty,
- "8h", "8H" or "8:00" to give a meeting's start hour,
- "8-11", "8h-11h", "8H-11H" or "8:00-11:00" to give a meeting's start and end hour,
- "8h15-11h15", "8H15-11H15" or "8:15-11:15" for the same thing but with minutes. BackToCurrentMonth=Povratak na trenutni mjesec ErrorOpenSurveyFillFirstSection=Niste popunili prvi dio kreiranja ankete ErrorOpenSurveyOneChoice=Unesite barem jedan odabir diff --git a/htdocs/langs/hr_HR/orders.lang b/htdocs/langs/hr_HR/orders.lang index 0009a2edad2..484bcfa17ce 100644 --- a/htdocs/langs/hr_HR/orders.lang +++ b/htdocs/langs/hr_HR/orders.lang @@ -17,7 +17,7 @@ SupplierOrder=Narudžba dobavljaču SuppliersOrders=Narudžbe dobavljačima SuppliersOrdersRunning=Otvorene narudžbe dobavljačima CustomerOrder=Sales Order -CustomersOrders=Sales Orders +CustomersOrders=Narudžbe kupaca CustomersOrdersRunning=Current sales orders CustomersOrdersAndOrdersLines=Sales orders and order details OrdersDeliveredToBill=Sales orders delivered to bill @@ -60,7 +60,7 @@ ProductQtyInDraftOrWaitingApproved=Količina proizvoda u skicama ili odobrenim n MenuOrdersToBill=Isporučene narudžbe MenuOrdersToBill2=Naplative narudžbe ShipProduct=Pošalji proizvod -CreateOrder=Kreiraj narudžbu +CreateOrder=Izradi narudžbu RefuseOrder=Odbij narudžbu ApproveOrder=Odobri narudžbu Approve2Order=Odobri narudžbu (druga razina) @@ -69,7 +69,7 @@ UnvalidateOrder=Neovjeri narudžbu DeleteOrder=Obriši narudžbu CancelOrder=Poništi narudžbu OrderReopened= Narudžba %s ponovo otvorena -AddOrder=Kreiraj narudžbu +AddOrder=Izradi narudžbu AddToDraftOrders=Dodati u skice narudžbe ShowOrder=Prikaži narudžbu OrdersOpened=Narudžbe za obradu @@ -85,7 +85,7 @@ NbOfOrders=Broj narudžbe OrdersStatistics=Statistike narudžbe OrdersStatisticsSuppliers=Purchase order statistics NumberOfOrdersByMonth=Broj narudžba tijekom mjeseca -AmountOfOrdersByMonthHT=Amount of orders by month (excl. tax) +AmountOfOrdersByMonthHT=Ukupan iznos narudžbi po mjesecu (bez PDV-a) ListOfOrders=Lista narudžbi CloseOrder=Zatvori narudžbu ConfirmCloseOrder=Are you sure you want to set this order to delivered? Once an order is delivered, it can be set to billed. @@ -94,7 +94,7 @@ ConfirmValidateOrder=Are you sure you want to validate this order under name ConfirmUnvalidateOrder=Are you sure you want to restore order %s to draft status? ConfirmCancelOrder=Are you sure you want to cancel this order? ConfirmMakeOrder=Are you sure you want to confirm you made this order on %s? -GenerateBill=Kreiraj račun +GenerateBill=Izradi račun ClassifyShipped=Označi kao isporučeno DraftOrders=Skica narudžbi DraftSuppliersOrders=Draft purchase orders @@ -106,7 +106,7 @@ RefOrderSupplierShort=Ref. order vendor SendOrderByMail=Pošalji narudžbu e-poštom ActionsOnOrder=Događaji vezani uz narudžbu NoArticleOfTypeProduct=Ne postoji stavka tipa proizvod tako da nema isporučive stavke za ovu narudžbu -OrderMode=Metoda narudžbe +OrderMode=Način narudžbe AuthorRequest=Autor zahtjeva UserWithApproveOrderGrant=Korisniku je dozvoljeno "odobravanje narudžbi" PaymentOrderRef=Plaćanje po narudžbi %s diff --git a/htdocs/langs/hr_HR/printing.lang b/htdocs/langs/hr_HR/printing.lang index c699c5187cd..32f9944db38 100644 --- a/htdocs/langs/hr_HR/printing.lang +++ b/htdocs/langs/hr_HR/printing.lang @@ -2,7 +2,7 @@ Module64000Name=Direktni ispis Module64000Desc=Omogući sistem direktnog ispisa PrintingSetup=Podešavanje sistema direktnog ispisa -PrintingDesc=This module adds a Print button to send documents directly to a printer (without opening document into an application) with various module. +PrintingDesc=This module adds a Print button to various modules to allow documents to be printed directly to a printer without needing to open the document in another application. MenuDirectPrinting=Zadaci direktnog ispisa DirectPrint=Direktni ispis PrintingDriverDesc=Configuration variables for printing driver. @@ -19,15 +19,15 @@ UserConf=Podešavanje prema korisniku PRINTGCP_INFO=Podešavanje Google OAuth API PRINTGCP_AUTHLINK=Autentifikacija PRINTGCP_TOKEN_ACCESS=Google Cloud Print OAuth Token -PrintGCPDesc=This driver allow to send documents directly to a printer with Google Cloud Print. +PrintGCPDesc=This driver allows sending documents directly to a printer using Google Cloud Print. GCP_Name=Naziv GCP_displayName=Prikazani naziv GCP_Id=ID pisača GCP_OwnerName=Vlasnik GCP_State=Stanje pisača GCP_connectionStatus=Online stanje -GCP_Type=Tip pisača -PrintIPPDesc=This driver allow to send documents directly to a printer. It requires a Linux system with CUPS installed. +GCP_Type=Vrsta pisača +PrintIPPDesc=This driver allows sending of documents directly to a printer. It requires a Linux system with CUPS installed. PRINTIPP_HOST=Print server PRINTIPP_PORT=Port PRINTIPP_USER=Korisničko ime @@ -44,9 +44,11 @@ IPP_BW=CB IPP_Color=Kolor IPP_Device=Uređaj IPP_Media=Medij pisača -IPP_Supported=Tip medija +IPP_Supported=Vrsta medija DirectPrintingJobsDesc=This page lists printing jobs found for available printers. -GoogleAuthNotConfigured=Google OAuth setup not done. Enable module OAuth and set a Google ID/Secret. +GoogleAuthNotConfigured=Google OAuth has not been setup. Enable module OAuth and set a Google ID/Secret. GoogleAuthConfigured=Google OAuth credentials were found into setup of module OAuth. PrintingDriverDescprintgcp=Configuration variables for printing driver Google Cloud Print. +PrintingDriverDescprintipp=Configuration variables for printing driver Cups. PrintTestDescprintgcp=List of Printers for Google Cloud Print. +PrintTestDescprintipp=List of Printers for Cups. diff --git a/htdocs/langs/hr_HR/products.lang b/htdocs/langs/hr_HR/products.lang index 4d43f08396a..48f1ecedb9f 100644 --- a/htdocs/langs/hr_HR/products.lang +++ b/htdocs/langs/hr_HR/products.lang @@ -2,6 +2,7 @@ ProductRef=Proizvod ref. ProductLabel=Oznaka proizvoda ProductLabelTranslated=Prevedena oznaka proizvoda +ProductDescription=Product description ProductDescriptionTranslated=Preveden opis proizvoda ProductNoteTranslated=Prevedena napomena proizvoda ProductServiceCard=Kartica proizvoda/usluga @@ -63,7 +64,7 @@ UpdateDefaultPrice=Promjeni predefiniranu cijenu UpdateLevelPrices=Promijeni cijene za svaki nivo AppliedPricesFrom=Applied from SellingPrice=Prodajna cijena -SellingPriceHT=Selling price (excl. tax) +SellingPriceHT=Prodajna cijena (bez PDV-a) SellingPriceTTC=Prodajna cijena (sa PDV-om) SellingMinPriceTTC=Minimum Selling price (inc. tax) CostPriceDescription=This price field (excl. tax) can be used to store the average amount this product costs to your company. It may be any price you calculate yourself, for example from the average buying price plus average production and distribution cost. @@ -92,8 +93,8 @@ PriceForEachProduct=Proizvodi s specifičnom cijenom SupplierCard=Vendor card PriceRemoved=Cijena uklonjena BarCode=Barkod -BarcodeType=Tip barkoda -SetDefaultBarcodeType=Odredi tip barkoda +BarcodeType=Vrsta barkoda +SetDefaultBarcodeType=Odredi vrstu barkoda BarcodeValue=Vrijednost barkoda NoteNotVisibleOnBill=Bilješka (ne vidi se na računima, ponudama...) ServiceLimitedDuration=Ako je proizvod usluga ograničenog trajanja: @@ -133,7 +134,7 @@ NoPriceDefinedForThisSupplier=No price/qty defined for this vendor/product NoSupplierPriceDefinedForThisProduct=No vendor price/qty defined for this product PredefinedProductsToSell=Predefined Product PredefinedServicesToSell=Predefined Service -PredefinedProductsAndServicesToSell=Predefinirani proizvodi/usluge za prodaju +PredefinedProductsAndServicesToSell=Upisani proizvodi i usluge na prodaju PredefinedProductsToPurchase=Predefinirani proizvod za kupovinu PredefinedServicesToPurchase=Predifinirana usluga za kupovinu PredefinedProductsAndServicesToPurchase=Predefined products/services to purchase diff --git a/htdocs/langs/hr_HR/projects.lang b/htdocs/langs/hr_HR/projects.lang index c40b0ff3f7b..5a9ef2fdf4e 100644 --- a/htdocs/langs/hr_HR/projects.lang +++ b/htdocs/langs/hr_HR/projects.lang @@ -26,7 +26,7 @@ OnlyYourTaskAreVisible=Only tasks assigned to you are visible. Assign task to yo ImportDatasetTasks=Tasks of projects ProjectCategories=Project tags/categories NewProject=Novi projekt -AddProject=Kreiraj projekt +AddProject=Izradi projekt DeleteAProject=Izbriši projekt DeleteATask=Izbriši zadatak ConfirmDeleteAProject=Are you sure you want to delete this project? @@ -66,7 +66,7 @@ TaskDateStart=Početak zadatka TaskDateEnd=Završetak zadatka TaskDescription=Opis zadatka NewTask=Novi zadatak -AddTask=Kreiraj zadatak +AddTask=Izradi zadatak AddTimeSpent=Create time spent AddHereTimeSpentForDay=Add here time spent for this day/task Activity=Aktivnost diff --git a/htdocs/langs/hr_HR/propal.lang b/htdocs/langs/hr_HR/propal.lang index 676fdc0efe3..9a8c94fd209 100644 --- a/htdocs/langs/hr_HR/propal.lang +++ b/htdocs/langs/hr_HR/propal.lang @@ -22,7 +22,7 @@ SearchAProposal=Pronađi ponudu NoProposal=Bez ponude ProposalsStatistics=Statistika ponuda NumberOfProposalsByMonth=Broj u mjesecu -AmountOfProposalsByMonthHT=Amount by month (excl. tax) +AmountOfProposalsByMonthHT=Iznos po mjesecu (bez PDV-a) NbOfProposals=Broj ponuda ShowPropal=Prikaži ponudu PropalsDraft=Skice diff --git a/htdocs/langs/hr_HR/resource.lang b/htdocs/langs/hr_HR/resource.lang index 1b85c37daf1..c16e266ebe7 100644 --- a/htdocs/langs/hr_HR/resource.lang +++ b/htdocs/langs/hr_HR/resource.lang @@ -5,13 +5,13 @@ DeleteResource=Obriši sredstvo ConfirmDeleteResourceElement=Potvrdite brisanje sredstva za ovaj element NoResourceInDatabase=Nema sredstava u bazi NoResourceLinked=Nema povezanih sredstava - +ActionsOnResource=Events about this resource ResourcePageIndex=Popis sredstava ResourceSingular=Sredstvo ResourceCard=Kartica sredstva -AddResource=Kreiraj sredstvo +AddResource=Izradi sredstvo ResourceFormLabel_ref=Naziv sredstva -ResourceType=Tip sredstva +ResourceType=Vrsta sredstva ResourceFormLabel_description=Opis sredstva ResourcesLinkedToElement=Sredstva povezana s elementom diff --git a/htdocs/langs/hr_HR/sendings.lang b/htdocs/langs/hr_HR/sendings.lang index aff0410d44a..433fc80c152 100644 --- a/htdocs/langs/hr_HR/sendings.lang +++ b/htdocs/langs/hr_HR/sendings.lang @@ -1,5 +1,5 @@ # Dolibarr language file - Source file is en_US - sendings -RefSending=Ref. isporuke +RefSending=Broj Sending=Isporuka Sendings=Isporuke AllSendings=Sve otpremnice @@ -7,20 +7,20 @@ Shipment=Pošiljka Shipments=Pošiljke ShowSending=Prikaži otrpemnice Receivings=Dostavne primke -SendingsArea=Sučelje otprema +SendingsArea=Otprema ListOfSendings=Popis pošiljki -SendingMethod=Metoda dostave +SendingMethod=Način dostave LastSendings=Zadnjih %s isporuka StatisticsOfSendings=Statistike pošiljki NbOfSendings=Broj pošiljki NumberOfShipmentsByMonth=Broj pošiljki tijekom mjeseca SendingCard=Kartica otpreme NewSending=Nova pošiljka -CreateShipment=Kreiraj pošiljku +CreateShipment=Izradi pošiljku QtyShipped=Količina poslana QtyShippedShort=Qty ship. QtyPreparedOrShipped=Qty prepared or shipped -QtyToShip=Količina za poslat +QtyToShip=Količina za isporuku QtyReceived=Količina primljena QtyInOtherShipments=Qty in other shipments KeepToShip=Preostalo za isporuku @@ -35,29 +35,29 @@ StatusSendingProcessed=Obrađen StatusSendingDraftShort=Skica StatusSendingValidatedShort=Ovjereno StatusSendingProcessedShort=Obrađen -SendingSheet=Otpremni list +SendingSheet=Dostavnica ConfirmDeleteSending=Are you sure you want to delete this shipment? ConfirmValidateSending=Are you sure you want to validate this shipment with reference %s? ConfirmCancelSending=Are you sure you want to cancel this shipment? DocumentModelMerou=Merou A5 model WarningNoQtyLeftToSend=Upozorenje, nema prozvoda za isporuku. StatsOnShipmentsOnlyValidated=Statistika se vodi po otpremnicama koje su ovjerene. Korišteni datum je datum ovjere otpremnice (planirani datum isporuke nije uvjek poznat). -DateDeliveryPlanned=Planirani dan isporuke +DateDeliveryPlanned=Planirani datum isporuke RefDeliveryReceipt=Ref delivery receipt StatusReceipt=Status delivery receipt DateReceived=Datum primitka pošiljke -SendShippingByEMail=Pošalji pošiljku putem e-pošte -SendShippingRef=Podnošenje otpeme %s +SendShippingByEMail=Send shipment by email +SendShippingRef=Dostavnica %s ActionsOnShipping=Događaji na otpremnici -LinkToTrackYourPackage=Poveznica za pračenje pošiljke +LinkToTrackYourPackage=Poveznica na praćenje pošiljke ShipmentCreationIsDoneFromOrder=Trenutno, kreiranje nove otpremnice se radi iz kartice narudžbe. ShipmentLine=Stavka otpremnice -ProductQtyInCustomersOrdersRunning=Product quantity into open customer orders +ProductQtyInCustomersOrdersRunning=Product quantity into open sales orders ProductQtyInSuppliersOrdersRunning=Product quantity into open purchase orders -ProductQtyInShipmentAlreadySent=Product quantity from open customer order already sent -ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from open supplier order already received -NoProductToShipFoundIntoStock=Nije pronađen proizvod za isporuku u skladištu %s. Ispravite zalihe ili se vratite nazad i odaberite drugo skladište. -WeightVolShort=Težina/Volumen +ProductQtyInShipmentAlreadySent=Product quantity from open sales order already sent +ProductQtyInSuppliersShipmentAlreadyRecevied=Product quantity from open purchase order already received +NoProductToShipFoundIntoStock=No product to ship found in warehouse %s. Correct stock or go back to choose another warehouse. +WeightVolShort=Masa/Volumen ValidateOrderFirstBeforeShipment=Prvo morate ovjeriti narudžbu prije izrade otpremnice. # Sending methods @@ -69,4 +69,4 @@ SumOfProductWeights=Ukupna težina proizvoda # warehouse details DetailWarehouseNumber= Skladišni detalji -DetailWarehouseFormat= W:%s (Qty : %d) +DetailWarehouseFormat= W:%s (Qty: %d) diff --git a/htdocs/langs/hr_HR/stripe.lang b/htdocs/langs/hr_HR/stripe.lang index b8d4e4275e8..b730288aa37 100644 --- a/htdocs/langs/hr_HR/stripe.lang +++ b/htdocs/langs/hr_HR/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/hr_HR/supplier_proposal.lang b/htdocs/langs/hr_HR/supplier_proposal.lang index 3f24fc4f0f1..524872ec4ab 100644 --- a/htdocs/langs/hr_HR/supplier_proposal.lang +++ b/htdocs/langs/hr_HR/supplier_proposal.lang @@ -15,7 +15,7 @@ SupplierProposals=Ponude dobavljača SupplierProposalsShort=Ponude dobavljača NewAskPrice=Novo traženje cijene ShowSupplierProposal=Prikaži zahtjev -AddSupplierProposal=Kreiraj zahtjev za cijenom +AddSupplierProposal=Izradi zahtjev za cijenom SupplierProposalRefFourn=Vendor ref SupplierProposalDate=Datum isporuke SupplierProposalRefFournNotice=Prije zatvaranja s "Prihvačeno", provjerite reference dobavljača. @@ -32,8 +32,8 @@ SupplierProposalStatusValidatedShort=Ovjereno SupplierProposalStatusClosedShort=Zatvoreno SupplierProposalStatusSignedShort=Prihvačeno SupplierProposalStatusNotSignedShort=Odbijeno -CopyAskFrom=Kreiraj zahtjev za cijenom kopirajući postojeći zahtjev -CreateEmptyAsk=Kreiraj prazan zahtjev +CopyAskFrom=Izradi zahtjev za cijenom kopirajući postojeći zahtjev +CreateEmptyAsk=Izradi prazan zahtjev ConfirmCloneAsk=Are you sure you want to clone the price request %s? ConfirmReOpenAsk=Are you sure you want to open back the price request %s? SendAskByMail=Pošalji zahtjev za cijenom poštom diff --git a/htdocs/langs/hr_HR/suppliers.lang b/htdocs/langs/hr_HR/suppliers.lang index 7572f5a92cb..f75d38c44c8 100644 --- a/htdocs/langs/hr_HR/suppliers.lang +++ b/htdocs/langs/hr_HR/suppliers.lang @@ -1,10 +1,10 @@ -# Dolibarr language file - Source file is en_US - suppliers +# Dolibarr language file - Source file is en_US - vendors Suppliers=Vendors SuppliersInvoice=Vendor invoice ShowSupplierInvoice=Show Vendor Invoice NewSupplier=New vendor History=Povijest -ListOfSuppliers=List of vendors +ListOfSuppliers=Popis dobavljača ShowSupplier=Show vendor OrderDate=Datum narudžbe BuyingPriceMin=Best buying price @@ -15,15 +15,15 @@ SomeSubProductHaveNoPrices=Neki od pod proizvoda nemaju definiranu cijenu AddSupplierPrice=Add buying price ChangeSupplierPrice=Change buying price SupplierPrices=Vendor prices -ReferenceSupplierIsAlreadyAssociatedWithAProduct=Ova ref. dobavljača već je povezana s ref.: %s +ReferenceSupplierIsAlreadyAssociatedWithAProduct=This vendor reference is already associated with a product: %s NoRecordedSuppliers=No vendor recorded SupplierPayment=Vendor payment SuppliersArea=Vendor area -RefSupplierShort=Ref. vendor +RefSupplierShort=Oznaka dobavljača Availability=Dostupnost -ExportDataset_fournisseur_1=Vendor invoices list and invoice lines +ExportDataset_fournisseur_1=Vendor invoices and invoice details ExportDataset_fournisseur_2=Vendor invoices and payments -ExportDataset_fournisseur_3=Purchase orders and order lines +ExportDataset_fournisseur_3=Purchase orders and order details ApproveThisOrder=Odobri narudžbu ConfirmApproveThisOrder=Are you sure you want to approve order %s? DenyingThisOrder=Zabrani narudžbu @@ -35,13 +35,13 @@ ListOfSupplierProductForSupplier=List of products and prices for vendor %s%s. PasswordChangeRequest=Request to change password for %s @@ -61,8 +61,8 @@ LinkToCompanyContact=Veza na komitenta/kontakt LinkedToDolibarrMember=Poveži s članom LinkedToDolibarrUser=Poveži s korisnikom LinkedToDolibarrThirdParty=Veza na Dolibarr komitenta -CreateDolibarrLogin=Kreiraj korisnika -CreateDolibarrThirdParty=Kreiraj komitenta +CreateDolibarrLogin=Izradi korisnika +CreateDolibarrThirdParty=Izradi komitenta LoginAccountDisableInDolibarr=Račun je onemogučen u Dolibarr-u. UsePersonalValue=Koristi osobnu vrijednost InternalUser=Interni korisnik @@ -97,7 +97,7 @@ NbOfPermissions=No. of permissions DontDowngradeSuperAdmin=Samo superadmin može unazaditi superadmina HierarchicalResponsible=Nadglednik HierarchicView=Hijerarhijski prikaz -UseTypeFieldToChange=Koristi polje Tip za promjenu +UseTypeFieldToChange=Koristi polje Vrsta za promjenu OpenIDURL=OpenID URL LoginUsingOpenID=Koristi OpenID za prijavu WeeklyHours=Hours worked (per week) diff --git a/htdocs/langs/hr_HR/withdrawals.lang b/htdocs/langs/hr_HR/withdrawals.lang index 784d9f2ba53..06c7880bb11 100644 --- a/htdocs/langs/hr_HR/withdrawals.lang +++ b/htdocs/langs/hr_HR/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Isplatna datoteka SetToStatusSent=Postavi status "Datoteka poslana" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistika statusa stavki -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/hu_HU/accountancy.lang b/htdocs/langs/hu_HU/accountancy.lang index d6b1e1ba041..b001cd9bf1a 100644 --- a/htdocs/langs/hu_HU/accountancy.lang +++ b/htdocs/langs/hu_HU/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Természet +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Eladások AccountingJournalType3=Beszerzések @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/hu_HU/admin.lang b/htdocs/langs/hu_HU/admin.lang index 381bd02eadf..b7a4c9177cb 100644 --- a/htdocs/langs/hu_HU/admin.lang +++ b/htdocs/langs/hu_HU/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Értesítések +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Figyelem, egyes Linux rendszereken, hogy küldjön e-mailt az e-mail, sendmail beállítás végrehajtása lehetőséget kell conatins-ba (paraméter mail.force_extra_parameters be a php.ini fájl). Ha néhány címzett nem fogadja az üzeneteket, próbáld meg szerkeszteni ezt a PHP paraméter = mail.force_extra_parameters-ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Keresés optimalizálása -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug betöltve. -XCacheInstalled=XCache betöltve. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/hu_HU/bills.lang b/htdocs/langs/hu_HU/bills.lang index 3b14581d116..f09b0754b02 100644 --- a/htdocs/langs/hu_HU/bills.lang +++ b/htdocs/langs/hu_HU/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Fizetés magasabb az emlékeztetőben leírtnál HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Osztályozva mint 'Fizetve' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Osztályozva mint 'Részben fizetve' ClassifyCanceled=Osztályozva mint 'Elhagyott' ClassifyClosed=Osztályozva mint 'Lezárt' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Helyetesítő számla megjelenítése ShowInvoiceAvoir=Jóváírás mutatása ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Fizetés mutatása AlreadyPaid=Már kifizetett AlreadyPaidBack=Visszafizetés megtörtént diff --git a/htdocs/langs/hu_HU/errors.lang b/htdocs/langs/hu_HU/errors.lang index 6819767dad9..53bc6470549 100644 --- a/htdocs/langs/hu_HU/errors.lang +++ b/htdocs/langs/hu_HU/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Speciális karakterek használata nem engedé ErrorNumRefModel=A referencia létezik az adatbázis (%s), és nem kompatibilis ezzel a számozással a szabály. Vegye rekord vagy átnevezték hivatkozással, hogy aktiválja ezt a modult. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Hiba a maszk ErrorBadMaskFailedToLocatePosOfSequence=Hiba, maszk sorozatszám nélkül ErrorBadMaskBadRazMonth=Hiba, rossz érték visszaállítása @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/hu_HU/main.lang b/htdocs/langs/hu_HU/main.lang index 0f997f74480..c94e91f20af 100644 --- a/htdocs/langs/hu_HU/main.lang +++ b/htdocs/langs/hu_HU/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kapcsolat/cím ehhez a harmadik félhez AddressesForCompany=Cím ehhez a harmadik félhez ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Események ezzel a taggal kapcsolatban ActionsOnProduct=Events about this product NActionsLate=%s késés @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Tervezet készítése SetToDraft=Vissza a vázlathoz ClickToEdit=Kattintson a szerkesztéshez diff --git a/htdocs/langs/hu_HU/products.lang b/htdocs/langs/hu_HU/products.lang index 4045450ea37..d60bbc8519c 100644 --- a/htdocs/langs/hu_HU/products.lang +++ b/htdocs/langs/hu_HU/products.lang @@ -2,6 +2,7 @@ ProductRef=Termék ref#. ProductLabel=Termék neve ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Termék/Szolgáltatás kártya diff --git a/htdocs/langs/hu_HU/stripe.lang b/htdocs/langs/hu_HU/stripe.lang index 224c4a49612..436eed8920c 100644 --- a/htdocs/langs/hu_HU/stripe.lang +++ b/htdocs/langs/hu_HU/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/hu_HU/withdrawals.lang b/htdocs/langs/hu_HU/withdrawals.lang index 1455787b6b5..0c3d5001cc4 100644 --- a/htdocs/langs/hu_HU/withdrawals.lang +++ b/htdocs/langs/hu_HU/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/id_ID/accountancy.lang b/htdocs/langs/id_ID/accountancy.lang index e54efc59469..59a863574ff 100644 --- a/htdocs/langs/id_ID/accountancy.lang +++ b/htdocs/langs/id_ID/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=init akuntansi InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Pilihan OptionModeProductSell=Mode penjualan OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/id_ID/admin.lang b/htdocs/langs/id_ID/admin.lang index 122aa5382fb..1ef3844c9e5 100644 --- a/htdocs/langs/id_ID/admin.lang +++ b/htdocs/langs/id_ID/admin.lang @@ -574,7 +574,7 @@ Module510Name=Gaji Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifikasi +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/id_ID/bills.lang b/htdocs/langs/id_ID/bills.lang index 81ec0d98abc..f59b569b7f2 100644 --- a/htdocs/langs/id_ID/bills.lang +++ b/htdocs/langs/id_ID/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Pengingat untuk pembayaran yang lebih tinggi HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Menggolongkan 'Telah dibayar' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Menggolongkan 'Telah dibayarkan sebagian' ClassifyCanceled=Menggolongkan 'Ditinggalkan' ClassifyClosed=Menggolongkan 'Ditutup' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/id_ID/errors.lang b/htdocs/langs/id_ID/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/id_ID/errors.lang +++ b/htdocs/langs/id_ID/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/id_ID/main.lang b/htdocs/langs/id_ID/main.lang index 9a83f1a851e..b294092f3c7 100644 --- a/htdocs/langs/id_ID/main.lang +++ b/htdocs/langs/id_ID/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/id_ID/products.lang b/htdocs/langs/id_ID/products.lang index e36e3d80ff7..35807138810 100644 --- a/htdocs/langs/id_ID/products.lang +++ b/htdocs/langs/id_ID/products.lang @@ -2,6 +2,7 @@ ProductRef=Item ref. ProductLabel=Item label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/id_ID/stripe.lang b/htdocs/langs/id_ID/stripe.lang index 7a3389f34b7..c5224982873 100644 --- a/htdocs/langs/id_ID/stripe.lang +++ b/htdocs/langs/id_ID/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/id_ID/withdrawals.lang b/htdocs/langs/id_ID/withdrawals.lang index a243902eaf8..eddea5d8abc 100644 --- a/htdocs/langs/id_ID/withdrawals.lang +++ b/htdocs/langs/id_ID/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/is_IS/accountancy.lang b/htdocs/langs/is_IS/accountancy.lang index 54ec9883ec9..c567b93094e 100644 --- a/htdocs/langs/is_IS/accountancy.lang +++ b/htdocs/langs/is_IS/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Náttúra +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Velta AccountingJournalType3=Innkaup @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/is_IS/admin.lang b/htdocs/langs/is_IS/admin.lang index 7deb68bf5a0..fcda617c4b1 100644 --- a/htdocs/langs/is_IS/admin.lang +++ b/htdocs/langs/is_IS/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Tilkynningar +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Aðvörun, á sumum Linux kerfi, að senda tölvupóst úr bréfinu, sendu mail framkvæmd skipulag verður conatins valkostur-BA (breytu mail.force_extra_parameters í skrá php.ini þinn). Ef viðtakendur eru margir aldrei fá tölvupóst, reyna að breyta þessari PHP breytu með mail.force_extra_parameters =-BA). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/is_IS/bills.lang b/htdocs/langs/is_IS/bills.lang index d4bcf37cc17..7c4b15c6d68 100644 --- a/htdocs/langs/is_IS/bills.lang +++ b/htdocs/langs/is_IS/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Greiðsla hærri en áminning að borga HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Flokka 'Greiddur' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Flokka 'Greiddur hluta' ClassifyCanceled=Flokka 'Yfirgefinn' ClassifyClosed=Lokað Flokka ' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Sýna skipta Reikningar ShowInvoiceAvoir=Sýna kredit athugið ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Sýna greiðslu AlreadyPaid=Þegar greitt AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/is_IS/errors.lang b/htdocs/langs/is_IS/errors.lang index 0f5966e525c..eef5defc668 100644 --- a/htdocs/langs/is_IS/errors.lang +++ b/htdocs/langs/is_IS/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Sérstafir eru ekki leyfðar í reitinn " %s ErrorNumRefModel=Vísun til staðar í gagnagrunninum ( %s ) og er ekki með þessari tala reglu. Fjarlægja færslu eða endurnefna þær tilvísun til að virkja þessa einingu. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Villa á grímu ErrorBadMaskFailedToLocatePosOfSequence=Villa, gríma án fjölda röð ErrorBadMaskBadRazMonth=Villa, slæmt endurstilla gildi @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/is_IS/main.lang b/htdocs/langs/is_IS/main.lang index 14b355fae1d..8e128f16e1f 100644 --- a/htdocs/langs/is_IS/main.lang +++ b/htdocs/langs/is_IS/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Viðburðir um þennan notanda ActionsOnProduct=Events about this product NActionsLate=%s seint @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Búa til drög SetToDraft=Back to draft ClickToEdit=Smelltu til að breyta diff --git a/htdocs/langs/is_IS/products.lang b/htdocs/langs/is_IS/products.lang index 563abacb975..84eddde13a9 100644 --- a/htdocs/langs/is_IS/products.lang +++ b/htdocs/langs/is_IS/products.lang @@ -2,6 +2,7 @@ ProductRef=Vara dómari. ProductLabel=Merkimiða vöru ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Vörur / Þjónusta kort diff --git a/htdocs/langs/is_IS/stripe.lang b/htdocs/langs/is_IS/stripe.lang index 434ccddb77c..5d320f9ed1a 100644 --- a/htdocs/langs/is_IS/stripe.lang +++ b/htdocs/langs/is_IS/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/is_IS/withdrawals.lang b/htdocs/langs/is_IS/withdrawals.lang index dafb7abf728..e934164fafa 100644 --- a/htdocs/langs/is_IS/withdrawals.lang +++ b/htdocs/langs/is_IS/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/it_IT/accountancy.lang b/htdocs/langs/it_IT/accountancy.lang index 49e09d6bed2..d94debdc2fd 100644 --- a/htdocs/langs/it_IT/accountancy.lang +++ b/htdocs/langs/it_IT/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Libri contabili AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Mostra diario contabile -Nature=Natura +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Vendite AccountingJournalType3=Acquisti @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Id Piano dei Conti InitAccountancy=Inizializza contabilità InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Opzioni OptionModeProductSell=Modalità vendita OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/it_IT/admin.lang b/htdocs/langs/it_IT/admin.lang index 61af6b824bb..690abd0b4c7 100644 --- a/htdocs/langs/it_IT/admin.lang +++ b/htdocs/langs/it_IT/admin.lang @@ -508,7 +508,7 @@ Module22Name=Mass Emailings Module22Desc=Manage bulk emailing Module23Name=Energia Module23Desc=Monitoraggio del consumo energetico -Module25Name=Sales Orders +Module25Name=Ordini Cliente Module25Desc=Sales order management Module30Name=Fatture Module30Desc=Management of invoices and credit notes for customers. Management of invoices and credit notes for suppliers @@ -574,7 +574,7 @@ Module510Name=Stipendi Module510Desc=Record and track employee payments Module520Name=Prestiti Module520Desc=Gestione dei prestiti -Module600Name=Notifiche +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Varianti prodotto @@ -871,7 +871,7 @@ Permission1237=Export purchase orders and their details Permission1251=Eseguire importazioni di massa di dati esterni nel database (data load) Permission1321=Esportare fatture attive, attributi e pagamenti Permission1322=Riaprire le fatture pagate -Permission1421=Export sales orders and attributes +Permission1421=Esporta Ordini Cliente e attributi Permission2401=Vedere azioni (eventi o compiti) personali Permission2402=Creare/modificare azioni (eventi o compiti) personali Permission2403=Cancellare azioni (eventi o compiti) personali @@ -958,7 +958,7 @@ DictionarySource=Origine delle proposte/ordini DictionaryAccountancyCategory=Personalized groups for reports DictionaryAccountancysystem=Modelli per piano dei conti DictionaryAccountancyJournal=Libri contabili -DictionaryEMailTemplates=Email Templates +DictionaryEMailTemplates=Modelli e-mail DictionaryUnits=Unità DictionaryMeasuringUnits=Unità di misura DictionaryProspectStatus=Stato cliente potenziale @@ -1090,10 +1090,10 @@ Delays_MAIN_DELAY_TRANSACTIONS_TO_CONCILIATE=Pending bank reconciliation Delays_MAIN_DELAY_MEMBERS=Delayed membership fee Delays_MAIN_DELAY_CHEQUES_TO_DEPOSIT=Check deposit not done Delays_MAIN_DELAY_EXPENSEREPORTS=Expense report to approve -SetupDescription1=Before starting to use Dolibarr some initial parameters must be defined and modules enabled/configured. -SetupDescription2=The following two sections are mandatory (the two first entries in the Setup menu): -SetupDescription3=%s -> %s
Basic parameters used to customize the default behavior of your application (e.g for country-related features). -SetupDescription4=%s -> %s
This software is a suite of many modules/applications, all more or less independent. The modules relevant to your needs must be enabled and configured. New items/options are added to menus with the activation of a module. +SetupDescription1=Prima di iniziare ad utilizzare Dolibarr si devono definire alcuni parametri iniziali ed abilitare/configurare i moduli. +SetupDescription2=Le 2 seguenti sezioni sono obbligatorie (le prime 2 sezioni nel menu Impostazioni): +SetupDescription3=%s -> %s
Parametri di base utilizzati per personalizzare il comportamento predefinito della tua applicazione (es: caratteristiche relative alla nazione). +SetupDescription4=%s -> %s
Questo software è una suite composta da molteplici moduli/applicazioni, tutti più o meno indipendenti. I moduli rilevanti per le tue necessità devono essere abilitati e configurati. Nuovi oggetti/opzioni vengono aggiunti ai menu quando un modulo viene attivato. SetupDescription5=Other Setup menu entries manage optional parameters. LogEvents=Eventi di audit di sicurezza Audit=Audit @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Attributi Complementari (ordini) ExtraFieldsSupplierInvoices=Attributi Complementari (fatture) ExtraFieldsProject=Attributi Complementari (progetti) ExtraFieldsProjectTask=Attributi Complementari (attività) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=L'attributo %s ha un valore errato. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Attenzione: su alcuni sistemi Linux, per poter inviare email, la configurazione di sendmail deve contenere l'opzione -ba (il parametro mail.force_extra_parameters nel file php.ini). Se alcuni destinatari non ricevono messaggi di posta elettronica, provate a modificare questo parametro con mail.force_extra_parameters =-BA). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Sessioni salvate con criptazione tramite Suhosin ConditionIsCurrently=La condizione corrente è %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Ottimizzazione della ricerca -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug caricato -XCacheInstalled=XCache attivato +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1302,7 +1304,7 @@ WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER=Ask for Warehouse Source for order ##### Suppliers Orders ##### BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER=Ask for bank account destination of purchase order ##### Orders ##### -OrdersSetup=Sales Orders management setup +OrdersSetup=Impostazione gestione Ordini Cliente OrdersNumberingModules=Modelli di numerazione ordini OrdersModelModule=Modelli per ordini in pdf FreeLegalTextOnOrders=Testo libero sugli ordini @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=Lista notifiche per utente -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Soglia @@ -1781,13 +1783,13 @@ ExpectedChecksum=Checksum previsto CurrentChecksum=Checksum attuale ForcedConstants=E' richiesto un valore costante MailToSendProposal=Proposte del cliente -MailToSendOrder=Sales orders +MailToSendOrder=Ordini Cliente MailToSendInvoice=Fatture attive MailToSendShipment=Spedizioni MailToSendIntervention=Interventi MailToSendSupplierRequestForQuotation=Richiesta di preventivo MailToSendSupplierOrder=Ordini d'acquisto -MailToSendSupplierInvoice=Fatture fornitore +MailToSendSupplierInvoice=Fatture Fornitore MailToSendContract=Contratti MailToThirdparty=Soggetti terzi MailToMember=Membri @@ -1875,8 +1877,8 @@ NoNewEmailToProcess=No new email (matching filters) to process NothingProcessed=Nothing done XEmailsDoneYActionsDone=%s emails qualified, %s emails successfully processed (for %s record/actions done) RecordEvent=Record email event -CreateLeadAndThirdParty=Create lead (and third party if necessary) -CreateTicketAndThirdParty=Create ticket (and third party if necessary) +CreateLeadAndThirdParty=Crea Opportunità (e Soggetto terzo se necessario) +CreateTicketAndThirdParty=Crea Ticket (e Soggetto terzo se necessario) CodeLastResult=Ultimo codice risultato NbOfEmailsInInbox=Number of emails in source directory LoadThirdPartyFromName=Load third party searching on %s (load only) @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/it_IT/bills.lang b/htdocs/langs/it_IT/bills.lang index 4955a8a9598..6579fb17d2d 100644 --- a/htdocs/langs/it_IT/bills.lang +++ b/htdocs/langs/it_IT/bills.lang @@ -6,8 +6,8 @@ BillsCustomer=Fattura attive BillsSuppliers=Fatture fornitore BillsCustomersUnpaid=Fatture attive non pagate BillsCustomersUnpaidForCompany=Fatture attive non pagate per %s -BillsSuppliersUnpaid=Unpaid vendor invoices -BillsSuppliersUnpaidForCompany=Unpaid vendors invoices for %s +BillsSuppliersUnpaid=Fatture Fornitore non pagate +BillsSuppliersUnpaidForCompany=Fatture Fornitore non pagate per %s BillsLate=Ritardi nei pagamenti BillsStatistics=Statistiche fatture attive BillsStatisticsSuppliers=Vendors invoices statistics @@ -54,7 +54,7 @@ InvoiceCustomer=Fattura attiva CustomerInvoice=Fattura attive CustomersInvoices=Fatture attive SupplierInvoice=Fattura fornitore -SuppliersInvoices=Vendors invoices +SuppliersInvoices=Fatture Fornitore SupplierBill=Fattura fornitore SupplierBills=Fatture passive Payment=Pagamento @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Pagamento superiore alla rimanenza da pagare HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classifica come "pagata" +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classifica come "parzialmente pagata" ClassifyCanceled=Classifica come "abbandonata" ClassifyClosed=Classifica come "chiusa" @@ -172,7 +173,7 @@ AllCustomerTemplateInvoices=Tutti i modelli delle fatture OtherBills=Altre fatture DraftBills=Fatture in bozza CustomersDraftInvoices=Bozze di fatture attive -SuppliersDraftInvoices=Vendor draft invoices +SuppliersDraftInvoices=Fatture Fornitore in bozza Unpaid=Non pagato ConfirmDeleteBill=Vuoi davvero cancellare questa fattura? ConfirmValidateBill=Vuoi davvero convalidare questa fattura con riferimento %s? @@ -214,6 +215,20 @@ ShowInvoiceReplace=Visualizza la fattura sostitutiva ShowInvoiceAvoir=Visualizza nota di credito ShowInvoiceDeposit=Mostra fattura d'acconto ShowInvoiceSituation=Mostra avanzamento lavori +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Visualizza pagamento AlreadyPaid=Già pagato AlreadyPaidBack=Già rimborsato @@ -248,7 +263,7 @@ DateInvoice=Data di fatturazione DatePointOfTax=Punto di imposta NoInvoice=Nessuna fattura ClassifyBill=Classificazione fattura -SupplierBillsToPay=Unpaid vendor invoices +SupplierBillsToPay=Fatture Fornitore non pagate CustomerBillsUnpaid=Fatture attive non pagate NonPercuRecuperable=Non recuperabile SetConditions=Imposta Termini di Pagamento diff --git a/htdocs/langs/it_IT/boxes.lang b/htdocs/langs/it_IT/boxes.lang index 1879e9f03c1..3ed6053cd40 100644 --- a/htdocs/langs/it_IT/boxes.lang +++ b/htdocs/langs/it_IT/boxes.lang @@ -7,12 +7,12 @@ BoxLastProductsInContract=Ultimi %s prodotti/servizi contrattualizzati BoxLastSupplierBills=Latest Vendor invoices BoxLastCustomerBills=Latest Customer invoices BoxOldestUnpaidCustomerBills=Ultime fatture attive non pagate -BoxOldestUnpaidSupplierBills=Oldest unpaid vendor invoices +BoxOldestUnpaidSupplierBills=Fatture Fornitore non pagate più vecchie BoxLastProposals=Ultime proposte commerciali BoxLastProspects=Ultimi clienti potenziali modificati BoxLastCustomers=Ultimi clienti modificati BoxLastSuppliers=Ultimi fornitori modificati -BoxLastCustomerOrders=Latest sales orders +BoxLastCustomerOrders=Ultimi Ordini Cliente BoxLastActions=Ultime azioni BoxLastContracts=Ultimi contratti BoxLastContacts=Ultimi contatti/indirizzi @@ -26,8 +26,8 @@ BoxTitleLastSuppliers=Ultimi %s ordini fornitore BoxTitleLastModifiedSuppliers=Fornitori: ultimi %s modificati BoxTitleLastModifiedCustomers=Clienti: ultimi %s modificati BoxTitleLastCustomersOrProspects=Ultimi %s clienti o potenziali clienti -BoxTitleLastCustomerBills=Latest %s Customer invoices -BoxTitleLastSupplierBills=Latest %s Vendor invoices +BoxTitleLastCustomerBills=Ultime %s Fatture Cliente +BoxTitleLastSupplierBills=Ultime %sFatture Fornitore BoxTitleLastModifiedProspects=Clienti potenziali: ultimi %s modificati BoxTitleLastModifiedMembers=Ultimi %s membri BoxTitleLastFicheInter=Ultimi %s interventi modificati @@ -52,11 +52,11 @@ ClickToAdd=Clicca qui per aggiungere NoRecordedCustomers=Nessun cliente registrato NoRecordedContacts=Nessun contatto registrato NoActionsToDo=Nessuna azione da fare -NoRecordedOrders=No recorded sales orders +NoRecordedOrders=Nessun Ordine Cliente registrato NoRecordedProposals=Nessuna proposta registrata NoRecordedInvoices=Nessuna fattura attiva registrata NoUnpaidCustomerBills=Nessuna fattura attiva non pagata -NoUnpaidSupplierBills=No unpaid vendor invoices +NoUnpaidSupplierBills=Nessuna Fattura Fornitore non pagata NoModifiedSupplierBills=No recorded vendor invoices NoRecordedProducts=Nessun prodotto/servizio registrato NoRecordedProspects=Nessun potenziale cliente registrato @@ -67,7 +67,7 @@ BoxLatestSupplierOrders=Latest purchase orders NoSupplierOrder=No recorded purchase order BoxCustomersInvoicesPerMonth=Fatture cliente al mese BoxSuppliersInvoicesPerMonth=Vendor Invoices per month -BoxCustomersOrdersPerMonth=Sales Orders per month +BoxCustomersOrdersPerMonth=Ordini Cliente per mese BoxSuppliersOrdersPerMonth=Vendor Orders per month BoxProposalsPerMonth=proposte al mese NoTooLowStockProducts=Nessun prodotto sotto la soglia minima di scorte diff --git a/htdocs/langs/it_IT/companies.lang b/htdocs/langs/it_IT/companies.lang index 556096c3565..e148e1d10ce 100644 --- a/htdocs/langs/it_IT/companies.lang +++ b/htdocs/langs/it_IT/companies.lang @@ -12,7 +12,7 @@ MenuNewSupplier=Nuovo fornitore MenuNewPrivateIndividual=Nuovo privato NewCompany=Nuova società (cliente, cliente potenziale, fornitore) NewThirdParty=Nuovo soggetto terzo (cliente potenziale , cliente, fornitore) -CreateDolibarrThirdPartySupplier=Crea una terza parte (fornitore) +CreateDolibarrThirdPartySupplier=Crea un Soggetto terzo (fornitore) CreateThirdPartyOnly=Crea soggetto terzo CreateThirdPartyAndContact=Crea un soggetto terzo + un contatto ProspectionArea=Area clienti potenziali @@ -29,9 +29,9 @@ AliasNameShort=Pseudonimo Companies=Società CountryIsInEEC=Paese appartenente alla Comunità Economica Europea PriceFormatInCurrentLanguage=Price display format in the current language and currency -ThirdPartyName=Third-party name -ThirdPartyEmail=Third-party email -ThirdParty=Third-party +ThirdPartyName=Nome Soggetto terzo +ThirdPartyEmail=e-mail Soggetto terzo +ThirdParty=Soggetto terzo ThirdParties=Soggetti Terzi ThirdPartyProspects=Clienti potenziali ThirdPartyProspectsStats=Clienti potenziali @@ -39,7 +39,7 @@ ThirdPartyCustomers=Clienti ThirdPartyCustomersStats=Clienti ThirdPartyCustomersWithIdProf12=Clienti con %s o %s ThirdPartySuppliers=Fornitori -ThirdPartyType=Third-party type +ThirdPartyType=Tipo di Soggetto terzo Individual=Privato ToCreateContactWithSameName=Will automatically create a contact/address with same information as the third party under the third party. In most cases, even if your third party is a physical person, creating a third party alone is enough. ParentCompany=Società madre diff --git a/htdocs/langs/it_IT/errors.lang b/htdocs/langs/it_IT/errors.lang index b27e9b572f4..4625655d891 100644 --- a/htdocs/langs/it_IT/errors.lang +++ b/htdocs/langs/it_IT/errors.lang @@ -23,7 +23,7 @@ ErrorFailToGenerateFile=Failed to generate file '%s'. ErrorThisContactIsAlreadyDefinedAsThisType=Questo contatto è già tra i contatti di questo tipo ErrorCashAccountAcceptsOnlyCashMoney=Questo conto corrente è un conto di cassa e accetta solo pagamenti in contanti. ErrorFromToAccountsMustDiffers=I conti bancari di origine e destinazione devono essere diversi. -ErrorBadThirdPartyName=Bad value for third-party name +ErrorBadThirdPartyName=Valore non valido per Nome Soggetto terzo ErrorProdIdIsMandatory=%s obbligatorio ErrorBadCustomerCodeSyntax=Sintassi del codice cliente errata ErrorBadBarCodeSyntax=Bad syntax for barcode. May be you set a bad barcode type or you defined a barcode mask for numbering that does not match value scanned. @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=I caratteri speciali non sono ammessi per il ErrorNumRefModel=Esiste un riferimento nel database (%s) e non è compatibile con questa regola di numerazione. Rimuovere o rinominare il record per attivare questo modulo. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Errore sulla maschera ErrorBadMaskFailedToLocatePosOfSequence=Errore, maschera senza numero di sequenza ErrorBadMaskBadRazMonth=Errore, valore di reset non valido @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications @@ -228,8 +229,8 @@ WarningPassIsEmpty=Attenzione, il database è accessibile senza password. Questa WarningConfFileMustBeReadOnly=Attenzione, il file di configurazione htdocs/conf/conf.php è scrivibile dal server web. Questa è una grave falla di sicurezza! Impostare il file in sola lettura per l'utente utilizzato dal server web. Se si utilizza Windows e il formato FAT per il disco, dovete sapere che tale filesystem non consente la gestione delle autorizzazioni sui file, quindi non può essere completamente sicuro. WarningsOnXLines=Warning su %s righe del sorgente WarningNoDocumentModelActivated=No model, for document generation, has been activated. A model will be chosen by default until you check your module setup. -WarningLockFileDoesNotExists=Warning, once setup is finished, you must disable the installation/migration tools by adding a file install.lock into directory %s. Omitting the creation of this file is a grave security risk. -WarningUntilDirRemoved=All security warnings (visible by admin users only) will remain active as long as the vulnerability is present (or that constant MAIN_REMOVE_INSTALL_WARNING is added in Setup->Other Setup). +WarningLockFileDoesNotExists=Attenzione, una volta terminato il setup, devi disabilitare gli strumenti di installazione/migrazione aggiungendo il file install.lock nella directory %s. Omettendo la creazione di questo file è un grave riscuio per la sicurezza. +WarningUntilDirRemoved=Tutti gli avvisi di sicurezza (visibili solo dagli amministratori) rimarranno attivi fintanto che la vulnerabilità è presente (o la costante MAIN_REMOVE_INSTALL_WARNING viene aggiunta in Impostazioni->Altre impostazioni). WarningCloseAlways=Attenzione, la chiusura è effettiva anche se il numero degli elementi non coincide fra inizio e fine. Abilitare questa opzione con cautela. WarningUsingThisBoxSlowDown=Attenzione: l'uso di questo box rallenterà pesantemente tutte le pagine che lo visualizzano WarningClickToDialUserSetupNotComplete=Le impostazioni di informazione del ClickToDial per il tuo utente non sono complete (vedi la scheda ClickToDial sulla tua scheda utente) diff --git a/htdocs/langs/it_IT/main.lang b/htdocs/langs/it_IT/main.lang index 1cdfe3e6746..de9aa73f69b 100644 --- a/htdocs/langs/it_IT/main.lang +++ b/htdocs/langs/it_IT/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contatti/indirizzi per questo soggetto terzo AddressesForCompany=Indirizzi per questo soggetto terzo ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Azioni su questo membro ActionsOnProduct=Eventi su questo prodotto NActionsLate=%s azioni in ritardo @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Collega a contratto LinkToIntervention=Collega a intervento +LinkToTicket=Link to ticket CreateDraft=Crea bozza SetToDraft=Ritorna a bozza ClickToEdit=Clicca per modificare @@ -875,7 +877,7 @@ TitleSetToDraft=Torna a Bozza ConfirmSetToDraft=Are you sure you want to go back to Draft status? ImportId=ID di importazione Events=Eventi -EMailTemplates=Email templates +EMailTemplates=Modelli e-mail FileNotShared=File non condiviso con pubblico esterno Project=Progetto Projects=Progetti @@ -937,8 +939,8 @@ SearchIntoProductsOrServices=Prodotti o servizi SearchIntoProjects=Progetti SearchIntoTasks=Compiti SearchIntoCustomerInvoices=Fatture attive -SearchIntoSupplierInvoices=Fatture fornitore -SearchIntoCustomerOrders=Sales orders +SearchIntoSupplierInvoices=Fatture Fornitore +SearchIntoCustomerOrders=Ordini Cliente SearchIntoSupplierOrders=Ordini d'acquisto SearchIntoCustomerProposals=Proposte del cliente SearchIntoSupplierProposals=Proposta venditore @@ -967,7 +969,7 @@ AssignedTo=Azione assegnata a Deletedraft=Elimina bozza ConfirmMassDraftDeletion=Draft mass delete confirmation FileSharedViaALink=File condiviso con un link -SelectAThirdPartyFirst=Select a third party first... +SelectAThirdPartyFirst=Seleziona prima un Soggetto terzo... YouAreCurrentlyInSandboxMode=You are currently in the %s "sandbox" mode Inventory=Inventario AnalyticCode=Analytic code diff --git a/htdocs/langs/it_IT/members.lang b/htdocs/langs/it_IT/members.lang index 7e387e3ebd3..780c0003f30 100644 --- a/htdocs/langs/it_IT/members.lang +++ b/htdocs/langs/it_IT/members.lang @@ -6,7 +6,7 @@ Member=Membro Members=Membri ShowMember=Visualizza scheda membro UserNotLinkedToMember=L'utente non è collegato ad un membro -ThirdpartyNotLinkedToMember=Third party not linked to a member +ThirdpartyNotLinkedToMember=Soggetto terzo non collegato ad un membro MembersTickets=Biglietti membri FundationMembers=Membri della fondazione ListOfValidatedPublicMembers=Elenco membri pubblici convalidati diff --git a/htdocs/langs/it_IT/orders.lang b/htdocs/langs/it_IT/orders.lang index a9aa89d62f6..9f439db00ee 100644 --- a/htdocs/langs/it_IT/orders.lang +++ b/htdocs/langs/it_IT/orders.lang @@ -17,14 +17,14 @@ SupplierOrder=Ordine d'acquisto SuppliersOrders=Ordini d'acquisto SuppliersOrdersRunning=Current purchase orders CustomerOrder=Sales Order -CustomersOrders=Sales Orders -CustomersOrdersRunning=Current sales orders +CustomersOrders=Ordini Cliente +CustomersOrdersRunning=Ordini Cliente in corso CustomersOrdersAndOrdersLines=Sales orders and order details OrdersDeliveredToBill=Sales orders delivered to bill OrdersToBill=Sales orders delivered OrdersInProcess=Sales orders in process -OrdersToProcess=Sales orders to process -SuppliersOrdersToProcess=Purchase orders to process +OrdersToProcess=Ordini Cliente da trattare +SuppliersOrdersToProcess=Ordini Fornitore da trattare StatusOrderCanceledShort=Annullato StatusOrderDraftShort=Bozza StatusOrderValidatedShort=Convalidato @@ -97,7 +97,7 @@ ConfirmMakeOrder=Vuoi davvero confermare di aver creato questo ordine su %stest mail (the word test must be in bold).
The two lines are separated by a carriage return.

__USER_SIGNATURE__ -PredefinedMailContentContract=__(Hello)__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentContract=__(Buongiorno)__\n\n\n__(Cordialmente)__\n\n__USER_SIGNATURE__ PredefinedMailContentSendInvoice=__(Hello)__\n\nPlease find invoice __REF__ attached \n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__(Hello)__\n\nWe would like to remind you that the invoice __REF__ seems to have not been paid. A copy of the invoice is attached as a reminder.\n\n__ONLINE_PAYMENT_TEXT_AND_URL__\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ PredefinedMailContentSendProposal=__(Hello)__\n\nPlease find commercial proposal __REF__ attached \n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ @@ -93,9 +93,9 @@ PredefinedMailContentSendSupplierOrder=__(Hello)__\n\nPlease find our order __RE PredefinedMailContentSendSupplierInvoice=__(Hello)__\n\nPlease find invoice __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ PredefinedMailContentSendShipping=__(Hello)__\n\nPlease find shipping __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ PredefinedMailContentSendFichInter=__(Hello)__\n\nPlease find intervention __REF__ attached\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ -PredefinedMailContentThirdparty=__(Hello)__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ -PredefinedMailContentContact=__(Hello)__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ -PredefinedMailContentUser=__(Hello)__\n\n\n__(Sincerely)__\n\n__USER_SIGNATURE__ +PredefinedMailContentThirdparty=__(Buongiorno)__\n\n\n__(Cordialmente)__\n\n__USER_SIGNATURE__ +PredefinedMailContentContact=__(Buongiorno)__\n\n\n__(Cordialmente)__\n\n__USER_SIGNATURE__ +PredefinedMailContentUser=__(Buongiorno)__\n\n\n__(Cordialmente)__\n\n__USER_SIGNATURE__ PredefinedMailContentLink=You can click on the link below to make your payment if it is not already done.\n\n%s\n\n DemoDesc=Dolibarr è un ERP/CRM compatto composto di diversi moduli funzionali. Un demo comprendente tutti i moduli non ha alcun senso, perché un caso simile non esiste nella realtà. Sono dunque disponibili diversi profili demo. ChooseYourDemoProfil=Scegli il profilo demo che corrisponde alla tua attività ... diff --git a/htdocs/langs/it_IT/products.lang b/htdocs/langs/it_IT/products.lang index 55901af6281..e956b7e7730 100644 --- a/htdocs/langs/it_IT/products.lang +++ b/htdocs/langs/it_IT/products.lang @@ -2,6 +2,7 @@ ProductRef=Rif. prodotto ProductLabel=Etichetta prodotto ProductLabelTranslated=Etichetta del prodotto tradotto +ProductDescription=Product description ProductDescriptionTranslated=Descrizione del prodotto tradotto ProductNoteTranslated=Tradotto nota prodotto ProductServiceCard=Scheda Prodotti/servizi diff --git a/htdocs/langs/it_IT/stripe.lang b/htdocs/langs/it_IT/stripe.lang index 6cad9de00dd..4f231e769ee 100644 --- a/htdocs/langs/it_IT/stripe.lang +++ b/htdocs/langs/it_IT/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/it_IT/users.lang b/htdocs/langs/it_IT/users.lang index 25624aa1fe3..191fead905f 100644 --- a/htdocs/langs/it_IT/users.lang +++ b/htdocs/langs/it_IT/users.lang @@ -87,7 +87,7 @@ GroupModified=Gruppo %s modificato con successo GroupDeleted=Gruppo %s rimosso ConfirmCreateContact=Vuoi davvero creare un account Dolibarr per questo contatto? ConfirmCreateLogin=Vuoi davvero creare un account Dolibarr per questo utente? -ConfirmCreateThirdParty=Vuoi davvero creare un soggetto terzo per questo utente? +ConfirmCreateThirdParty=Vuoi davvero creare un soggetto terzo per questo membro? LoginToCreate=Accedi per creare NameToCreate=Nome del soggetto terzo da creare YourRole=Il tuo ruolo diff --git a/htdocs/langs/it_IT/withdrawals.lang b/htdocs/langs/it_IT/withdrawals.lang index 366383c6284..38e96eaf840 100644 --- a/htdocs/langs/it_IT/withdrawals.lang +++ b/htdocs/langs/it_IT/withdrawals.lang @@ -25,7 +25,7 @@ WithdrawRejectStatistics=Direct debit payment reject statistics LastWithdrawalReceipt=Latest %s direct debit receipts MakeWithdrawRequest=Make a direct debit payment request WithdrawRequestsDone=%s direct debit payment requests recorded -ThirdPartyBankCode=Third-party bank code +ThirdPartyBankCode=Codice bancario del Soggetto terzo NoInvoiceCouldBeWithdrawed=No invoice debited successfully. Check that invoices are on companies with a valid IBAN and that IBAN has a UMR (Unique Mandate Reference) with mode %s. ClassCredited=Classifica come accreditata ClassCreditedConfirm=Vuoi davvero classificare questa ricevuta di domiciliazione come accreditata sul vostro conto bancario? @@ -76,7 +76,8 @@ WithdrawalFile=Ricevuta bancaria SetToStatusSent=Imposta stato come "file inviato" ThisWillAlsoAddPaymentOnInvoice=Questo inserirà i pagamenti relativi alle fatture e le classificherà come "Pagate" se il restante da pagare sarà uguale a 0 StatisticsByLineStatus=Statistics by status of lines -RUM=RUM +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Riferimento Unico Mandato RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Tipologia sequenza d'incasso (FRST o RECUR) diff --git a/htdocs/langs/ja_JP/accountancy.lang b/htdocs/langs/ja_JP/accountancy.lang index 11b5f42eb07..12f6c5a9a8b 100644 --- a/htdocs/langs/ja_JP/accountancy.lang +++ b/htdocs/langs/ja_JP/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=自然 +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=販売 AccountingJournalType3=購入 @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/ja_JP/admin.lang b/htdocs/langs/ja_JP/admin.lang index d3e4b8730ca..995a7de34f0 100644 --- a/htdocs/langs/ja_JP/admin.lang +++ b/htdocs/langs/ja_JP/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=通知 +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=警告は、一部のLinuxシステムでは、電子メールから電子メールを送信するためには、sendmailの実行セットアップする必要があります含むオプション-BA(パラメータmail.force_extra_parameters php.iniファイルに)。一部の受信者がメールを受信しない場合は、mail.force_extra_parameters =-BA)と、このPHPパラメータを編集してみてください。 @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/ja_JP/bills.lang b/htdocs/langs/ja_JP/bills.lang index f821606de2e..43bf3b0f91d 100644 --- a/htdocs/langs/ja_JP/bills.lang +++ b/htdocs/langs/ja_JP/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=支払うために思い出させるよりも高 HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=分類 '有料' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially='は部分的に有料 "に分類 ClassifyCanceled="放棄"を分類する ClassifyClosed="クローズ"を分類する @@ -214,6 +215,20 @@ ShowInvoiceReplace=請求書を交換見せる ShowInvoiceAvoir=クレジットメモを表示する ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=支払を表示する AlreadyPaid=既に支払わ AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/ja_JP/errors.lang b/htdocs/langs/ja_JP/errors.lang index 2fde390abbd..35e5c4e343e 100644 --- a/htdocs/langs/ja_JP/errors.lang +++ b/htdocs/langs/ja_JP/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=特殊文字は、フィールド "%s&qu ErrorNumRefModel=参照は、データベース(%s)に存在し、この番号規則と互換性がありません。レコードを削除するか、このモジュールを有効にするために参照を変更しました。 ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=マスク上でのエラー ErrorBadMaskFailedToLocatePosOfSequence=シーケンス番号のないエラー、マスク ErrorBadMaskBadRazMonth=エラー、不正なリセット値 @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/ja_JP/main.lang b/htdocs/langs/ja_JP/main.lang index 370b99a62d2..a37b98039bd 100644 --- a/htdocs/langs/ja_JP/main.lang +++ b/htdocs/langs/ja_JP/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=このメンバーに関するイベント ActionsOnProduct=Events about this product NActionsLate=%s後半 @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=ドラフトを作成します。 SetToDraft=Back to draft ClickToEdit=クリックして編集 diff --git a/htdocs/langs/ja_JP/products.lang b/htdocs/langs/ja_JP/products.lang index fe9fa2eb27d..ccdf589b609 100644 --- a/htdocs/langs/ja_JP/products.lang +++ b/htdocs/langs/ja_JP/products.lang @@ -2,6 +2,7 @@ ProductRef=製品のref。 ProductLabel=製品のラベル ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=製品/サービスカード diff --git a/htdocs/langs/ja_JP/stripe.lang b/htdocs/langs/ja_JP/stripe.lang index 8884b28ea4b..845bf30215c 100644 --- a/htdocs/langs/ja_JP/stripe.lang +++ b/htdocs/langs/ja_JP/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/ja_JP/withdrawals.lang b/htdocs/langs/ja_JP/withdrawals.lang index 96559a7dfad..7734a63a35f 100644 --- a/htdocs/langs/ja_JP/withdrawals.lang +++ b/htdocs/langs/ja_JP/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/ka_GE/accountancy.lang b/htdocs/langs/ka_GE/accountancy.lang index 758d9c340a5..1fc3b3e05ec 100644 --- a/htdocs/langs/ka_GE/accountancy.lang +++ b/htdocs/langs/ka_GE/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/ka_GE/admin.lang b/htdocs/langs/ka_GE/admin.lang index f30d6edd9f7..2e27c6fe81f 100644 --- a/htdocs/langs/ka_GE/admin.lang +++ b/htdocs/langs/ka_GE/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/ka_GE/bills.lang b/htdocs/langs/ka_GE/bills.lang index 4f114d4df1c..53535e58b46 100644 --- a/htdocs/langs/ka_GE/bills.lang +++ b/htdocs/langs/ka_GE/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/ka_GE/errors.lang b/htdocs/langs/ka_GE/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/ka_GE/errors.lang +++ b/htdocs/langs/ka_GE/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/ka_GE/main.lang b/htdocs/langs/ka_GE/main.lang index 6efbe942032..1cadc32f4ab 100644 --- a/htdocs/langs/ka_GE/main.lang +++ b/htdocs/langs/ka_GE/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/ka_GE/products.lang b/htdocs/langs/ka_GE/products.lang index 7b68f5b3ebd..73e672284de 100644 --- a/htdocs/langs/ka_GE/products.lang +++ b/htdocs/langs/ka_GE/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/ka_GE/stripe.lang b/htdocs/langs/ka_GE/stripe.lang index 7a3389f34b7..c5224982873 100644 --- a/htdocs/langs/ka_GE/stripe.lang +++ b/htdocs/langs/ka_GE/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/ka_GE/withdrawals.lang b/htdocs/langs/ka_GE/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/ka_GE/withdrawals.lang +++ b/htdocs/langs/ka_GE/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/km_KH/main.lang b/htdocs/langs/km_KH/main.lang index 545a6c660c9..57b062774ea 100644 --- a/htdocs/langs/km_KH/main.lang +++ b/htdocs/langs/km_KH/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/kn_IN/accountancy.lang b/htdocs/langs/kn_IN/accountancy.lang index 758d9c340a5..1fc3b3e05ec 100644 --- a/htdocs/langs/kn_IN/accountancy.lang +++ b/htdocs/langs/kn_IN/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/kn_IN/admin.lang b/htdocs/langs/kn_IN/admin.lang index 4f98d74a676..c0997f3eb4b 100644 --- a/htdocs/langs/kn_IN/admin.lang +++ b/htdocs/langs/kn_IN/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/kn_IN/bills.lang b/htdocs/langs/kn_IN/bills.lang index e7b17c926d2..6d3cd311c75 100644 --- a/htdocs/langs/kn_IN/bills.lang +++ b/htdocs/langs/kn_IN/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/kn_IN/errors.lang b/htdocs/langs/kn_IN/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/kn_IN/errors.lang +++ b/htdocs/langs/kn_IN/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/kn_IN/main.lang b/htdocs/langs/kn_IN/main.lang index b9b20772410..aae0806ec95 100644 --- a/htdocs/langs/kn_IN/main.lang +++ b/htdocs/langs/kn_IN/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/kn_IN/products.lang b/htdocs/langs/kn_IN/products.lang index 0dc770ad9e5..478e1ac0d9f 100644 --- a/htdocs/langs/kn_IN/products.lang +++ b/htdocs/langs/kn_IN/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/kn_IN/stripe.lang b/htdocs/langs/kn_IN/stripe.lang index 7a3389f34b7..c5224982873 100644 --- a/htdocs/langs/kn_IN/stripe.lang +++ b/htdocs/langs/kn_IN/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/kn_IN/withdrawals.lang b/htdocs/langs/kn_IN/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/kn_IN/withdrawals.lang +++ b/htdocs/langs/kn_IN/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/ko_KR/accountancy.lang b/htdocs/langs/ko_KR/accountancy.lang index 3ce2ffde609..21ac14a025b 100644 --- a/htdocs/langs/ko_KR/accountancy.lang +++ b/htdocs/langs/ko_KR/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/ko_KR/admin.lang b/htdocs/langs/ko_KR/admin.lang index 00d354072b1..5a407bc2806 100644 --- a/htdocs/langs/ko_KR/admin.lang +++ b/htdocs/langs/ko_KR/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/ko_KR/bills.lang b/htdocs/langs/ko_KR/bills.lang index fc1a2e2058d..7793367f923 100644 --- a/htdocs/langs/ko_KR/bills.lang +++ b/htdocs/langs/ko_KR/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/ko_KR/errors.lang b/htdocs/langs/ko_KR/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/ko_KR/errors.lang +++ b/htdocs/langs/ko_KR/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/ko_KR/main.lang b/htdocs/langs/ko_KR/main.lang index 43241b1201b..e3bfba6b683 100644 --- a/htdocs/langs/ko_KR/main.lang +++ b/htdocs/langs/ko_KR/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=이 협력업체의 연락처 / 주소 AddressesForCompany=이 협력업체의 주소 ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=이 멤버에 대한 이벤트 ActionsOnProduct=Events about this product NActionsLate=%s 늦게 @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=계약서 링크 LinkToIntervention=중재에 연결 +LinkToTicket=Link to ticket CreateDraft=초안 작성 SetToDraft=초안으로 돌아 가기 ClickToEdit=편집하려면 클릭하십시오. diff --git a/htdocs/langs/ko_KR/products.lang b/htdocs/langs/ko_KR/products.lang index 5951c9bcae9..76a94d718c0 100644 --- a/htdocs/langs/ko_KR/products.lang +++ b/htdocs/langs/ko_KR/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/ko_KR/stripe.lang b/htdocs/langs/ko_KR/stripe.lang index 84c51758320..f6a259ca219 100644 --- a/htdocs/langs/ko_KR/stripe.lang +++ b/htdocs/langs/ko_KR/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/ko_KR/withdrawals.lang b/htdocs/langs/ko_KR/withdrawals.lang index 94d4de3b91d..a49e46a47a2 100644 --- a/htdocs/langs/ko_KR/withdrawals.lang +++ b/htdocs/langs/ko_KR/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/lo_LA/accountancy.lang b/htdocs/langs/lo_LA/accountancy.lang index d64c13327b4..256b24e349e 100644 --- a/htdocs/langs/lo_LA/accountancy.lang +++ b/htdocs/langs/lo_LA/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/lo_LA/admin.lang b/htdocs/langs/lo_LA/admin.lang index f3335cb7b23..4dad4d295f0 100644 --- a/htdocs/langs/lo_LA/admin.lang +++ b/htdocs/langs/lo_LA/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/lo_LA/bills.lang b/htdocs/langs/lo_LA/bills.lang index 4f114d4df1c..53535e58b46 100644 --- a/htdocs/langs/lo_LA/bills.lang +++ b/htdocs/langs/lo_LA/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/lo_LA/errors.lang b/htdocs/langs/lo_LA/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/lo_LA/errors.lang +++ b/htdocs/langs/lo_LA/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/lo_LA/main.lang b/htdocs/langs/lo_LA/main.lang index 33d9661f91a..ded9062fdce 100644 --- a/htdocs/langs/lo_LA/main.lang +++ b/htdocs/langs/lo_LA/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/lo_LA/products.lang b/htdocs/langs/lo_LA/products.lang index cba53debed1..2db91fc0e29 100644 --- a/htdocs/langs/lo_LA/products.lang +++ b/htdocs/langs/lo_LA/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/lo_LA/stripe.lang b/htdocs/langs/lo_LA/stripe.lang index 7a3389f34b7..c5224982873 100644 --- a/htdocs/langs/lo_LA/stripe.lang +++ b/htdocs/langs/lo_LA/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/lo_LA/withdrawals.lang b/htdocs/langs/lo_LA/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/lo_LA/withdrawals.lang +++ b/htdocs/langs/lo_LA/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/lt_LT/accountancy.lang b/htdocs/langs/lt_LT/accountancy.lang index d3befafadf9..01dda78192d 100644 --- a/htdocs/langs/lt_LT/accountancy.lang +++ b/htdocs/langs/lt_LT/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Apskaitos žurnalai AccountingJournal=Apskaitos žurnalas NewAccountingJournal=Naujas apskaitos žurnalas ShowAccoutingJournal=Rodyti apskaitos žurnalą -Nature=Prigimtis +NatureOfJournal=Nature of Journal AccountingJournalType1=Įvairiarūšės operacijos AccountingJournalType2=Pardavimai AccountingJournalType3=Pirkimai @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=Šis puslapis gali būti naudojamas inicijuoti apskaitos sąskaitą prekėms ir paslaugoms, kurių pardavimo ir pirkimo apibrėžtoje apskaitos sąskaitoje nėra. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Rėžimas pardavimas OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/lt_LT/admin.lang b/htdocs/langs/lt_LT/admin.lang index 40655912693..f8f1ab31a6c 100644 --- a/htdocs/langs/lt_LT/admin.lang +++ b/htdocs/langs/lt_LT/admin.lang @@ -574,7 +574,7 @@ Module510Name=Atlyginimai Module510Desc=Record and track employee payments Module520Name=Paskolos Module520Desc=Paskolų valdymas -Module600Name=Pranešimai +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Papildomi požymiai (užsakymai) ExtraFieldsSupplierInvoices=Papildomi požymiai (sąskaitos-faktūros) ExtraFieldsProject=Papildomi požymiai (projektai) ExtraFieldsProjectTask=Papildomi požymiai (užduotys) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Požymis %s turi klaidingą reikšmę. AlphaNumOnlyLowerCharsAndNoSpace=Tik raidiniai-skaitmeniniai simboliai, mažosiomis raidėmis, be tarpų SendmailOptionNotComplete=ĮSPĖJIMAS, kai kuriose Linux sistemose, norint siųsti el. laiškus iš savo pašto, vykdymo nuostatose turi būti opcija -ba (parametras mail.force_extra_parameters į savo php.ini failą). Jei kai kurie gavėjai niekada negauna el. laiškų, pabandykite redaguoti šį PHP parametrą su mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Sesijų saugykla užšifruota Suhosin ConditionIsCurrently=Dabartinė būklė yra %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Paieškos optimizavimas -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug yraužkrautas. -XCacheInstalled=Xcache yra įkelta. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Slenkstis @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/lt_LT/bills.lang b/htdocs/langs/lt_LT/bills.lang index a0f656f429a..fb86c79720d 100644 --- a/htdocs/langs/lt_LT/bills.lang +++ b/htdocs/langs/lt_LT/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Mokėjimas svarbesnis už priminimą sumokėti HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Priskirti 'Apmokėtos' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Priskirti 'Dalinai apmokėtos' ClassifyCanceled=Priskirti 'Neįvykusios' ClassifyClosed=Priskirti 'Uždarytos' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Rodyti pakeičiančią sąskaitą-faktūrą ShowInvoiceAvoir=Rodyti kreditinę sąskaitą ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Rodyti mokėjimą AlreadyPaid=Jau apmokėta AlreadyPaidBack=Mokėjimas jau grąžintas diff --git a/htdocs/langs/lt_LT/errors.lang b/htdocs/langs/lt_LT/errors.lang index d7758180fb6..d3fcc029198 100644 --- a/htdocs/langs/lt_LT/errors.lang +++ b/htdocs/langs/lt_LT/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Specialūs simboliai neleidžiami laukelyje " ErrorNumRefModel=Nuoroda yra į duomenų bazę (%s) ir yra nesuderinama su šiomis numeravimo tasyklėmis. Pašalinkite įrašą arba pervadinkite nuorodą, kad aktyvuoti šį modulį. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Maskavimo (mask) klaida ErrorBadMaskFailedToLocatePosOfSequence=Klaida, maskavimas be eilės numeris ErrorBadMaskBadRazMonth=Klaida, bloga perkrovimo reikšmė @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/lt_LT/main.lang b/htdocs/langs/lt_LT/main.lang index 77fad226e8f..78e8ba8df8f 100644 --- a/htdocs/langs/lt_LT/main.lang +++ b/htdocs/langs/lt_LT/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Adresatai/adresai šiai trečiajai šaliai AddressesForCompany=Adresai šiai trečiajai šaliai ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Įvykiai su šiuo nariu ActionsOnProduct=Events about this product NActionsLate=%s vėluoja @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Sukurti projektą SetToDraft=Atgal į projektą ClickToEdit=Spausk redaguoti diff --git a/htdocs/langs/lt_LT/products.lang b/htdocs/langs/lt_LT/products.lang index 110c1b650ec..db38cb8e31a 100644 --- a/htdocs/langs/lt_LT/products.lang +++ b/htdocs/langs/lt_LT/products.lang @@ -2,6 +2,7 @@ ProductRef=Produkto nuoroda ProductLabel=Produkto etiketė ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Produkto / Paslaugos kortelė diff --git a/htdocs/langs/lt_LT/stripe.lang b/htdocs/langs/lt_LT/stripe.lang index cbed09acbf1..327ed0661ed 100644 --- a/htdocs/langs/lt_LT/stripe.lang +++ b/htdocs/langs/lt_LT/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/lt_LT/withdrawals.lang b/htdocs/langs/lt_LT/withdrawals.lang index 92eb828c596..4b86443e69a 100644 --- a/htdocs/langs/lt_LT/withdrawals.lang +++ b/htdocs/langs/lt_LT/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Išėmimo failas SetToStatusSent=Nustatyti būklę "Failas išsiųstas" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Eilučių būklės statistika -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/lv_LV/accountancy.lang b/htdocs/langs/lv_LV/accountancy.lang index 7808991734b..cd7a3f66474 100644 --- a/htdocs/langs/lv_LV/accountancy.lang +++ b/htdocs/langs/lv_LV/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Grāmatvedības žurnāli AccountingJournal=Grāmatvedības žurnāls NewAccountingJournal=Jauns grāmatvedības žurnāls ShowAccoutingJournal=Rādīt grāmatvedības žurnālu -Nature=Daba +NatureOfJournal=Nature of Journal AccountingJournalType1=Dažādas darbības AccountingJournalType2=Pārdošanas AccountingJournalType3=Pirkumi @@ -291,6 +291,7 @@ Modelcsv_quadratus=Eksportēt Quadratus QuadraCompta Modelcsv_ebp=Eksportēt uz EBP Modelcsv_cogilog=Eksportēt uz Cogilog Modelcsv_agiris=Eksports uz Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Eksportēt OpenConcerto (tests) Modelcsv_configurable=Eksportēt CSV konfigurējamu Modelcsv_FEC=Eksporta FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Kontu konts. Id InitAccountancy=Init grāmatvedība InitAccountancyDesc=Šo lapu var izmantot, lai inicializētu grāmatvedības kontu par produktiem un pakalpojumiem, kuriem nav noteikts grāmatvedības konts pārdošanai un pirkumiem. DefaultBindingDesc=Šo lapu var izmantot, lai iestatītu noklusēto kontu, ko izmantot, lai saistītu darījumu protokolu par algas, ziedojumiem, nodokļiem un PVN, ja neviens konkrēts grāmatvedības konts jau nav iestatīts. -DefaultClosureDesc=Šo lapu var izmantot, lai iestatītu parametrus, kas jāizmanto bilances pievienošanai. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Iespējas OptionModeProductSell=Mode pārdošana OptionModeProductSellIntra=Pārdošanas veids, ko eksportē EEK diff --git a/htdocs/langs/lv_LV/admin.lang b/htdocs/langs/lv_LV/admin.lang index 226e333fcd1..7eddfe886cf 100644 --- a/htdocs/langs/lv_LV/admin.lang +++ b/htdocs/langs/lv_LV/admin.lang @@ -108,7 +108,7 @@ MultiCurrencySetup=Daudzvalūtu iestatījumi MenuLimits=Robežas un precizitāte MenuIdParent=Galvenās izvēlnes ID DetailMenuIdParent=ID vecāku izvēlnē (tukšs top izvēlnē) -DetailPosition=Šķirot skaits definēt izvēlnes novietojumu +DetailPosition=Secības numurs, lai definēt izvēlnes novietojumu AllMenus=Viss NotConfigured=Modulis / aplikācija nav konfigurēta Active=Aktīvs @@ -574,7 +574,7 @@ Module510Name=Algas Module510Desc=Ierakstiet un sekojiet darbinieku maksājumiem Module520Name=Aizdevumi Module520Desc=Aizdevumu vadība -Module600Name=Paziņojumi +Module600Name=Notifications on business event Module600Desc=Sūtiet e-pasta paziņojumus, ko izraisījis uzņēmuma notikums: katram lietotājam (iestatījums ir noteikts katram lietotājam), katram trešās puses kontaktpersonai (iestatīšana noteikta katrai trešajai pusei) vai konkrētiem e-pasta ziņojumiem Module600Long=Ņemiet vērā, ka šis modulis sūta e-pastus reālā laikā, kad notiek konkrēts biznesa notikums. Ja meklējat iespēju nosūtīt e-pasta atgādinājumus par dienas kārtības notikumiem, dodieties uz moduļa Agenda uzstādīšanu. Module610Name=Produkta varianti @@ -1185,7 +1185,7 @@ ExtraFieldsSupplierOrdersLines=Complementary attributes (order lines) ExtraFieldsSupplierInvoicesLines=Complementary attributes (invoice lines) ExtraFieldsThirdParties=Papildus atribūti (trešā persona) ExtraFieldsContacts=Papildus atribūti (kontakts/adrese) -ExtraFieldsMember=Papildinošas atribūti (biedrs) +ExtraFieldsMember=Papildinošie atribūti (dalībnieks) ExtraFieldsMemberType=Papildinošas atribūti (biedrs tipa) ExtraFieldsCustomerInvoices=Papildinošas atribūti (rēķini) ExtraFieldsCustomerInvoicesRec=Papildu atribūti (veidņu rēķini) @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Papildinošas atribūti (rīkojumi) ExtraFieldsSupplierInvoices=Papildinošas atribūti (rēķini) ExtraFieldsProject=Papildinošas atribūti (projekti) ExtraFieldsProjectTask=Papildinošas atribūti (uzdevumi) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Parametram %s ir nepareiza vērtība. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Brīdinājums, par dažiem Linux sistēmām, lai nosūtītu e-pastu no jūsu e-pastu, sendmail izpilde uzstādīšana ir iekļauti variants-ba (parametrs mail.force_extra_parameters savā php.ini failā). Ja daži saņēmēji nekad saņemt e-pastus, mēģina labot šo PHP parametru ar mail.force_extra_parameters =-BA). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Sesija uzglabāšana šifrēta ar Suhosin ConditionIsCurrently=Stāvoklis šobrīd ir %s YouUseBestDriver=Jūs izmantojat draiveri %s, kas ir labākais šobrīd pieejams draiveris. YouDoNotUseBestDriver=Jūs izmantojat draiveri %s, bet ieteicams ir %s. -NbOfProductIsLowerThanNoPb=Jums ir tikai %s produkti/pakalpojumi datu bāzē. Tai nav nepieciešama īpaša optimizācija. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Meklēšanas optimizācija -YouHaveXProductUseSearchOptim=Jūs esat %s produktu datu bāzē. Jums vajadzētu pievienot pastāvīgo PRODUCT_DONOTSEARCH_ANYWHERE uz 1 vietne Home-Setup-Other. Ierobežojiet meklēšanu ar virkņu sākumu, kas ļauj datubāzei izmantot indeksus, un jums vajadzētu saņemt tūlītēju atbildi. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Jūs izmantojat tīmekļa pārlūku %s. Šī pārlūkprogramma ir droša un ātrdarbīgs. BrowserIsKO=Jūs izmantojat tīmekļa pārlūku %s. Šī pārlūka informācija ir slikta izvēle drošībai, veiktspējai un uzticamībai. Mēs iesakām izmantot Firefox, Chrome, Opera vai Safari. -XDebugInstalled=XDebug ir ielādēts -XCacheInstalled=XCache ir ielādēts. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Rādīt klientu / pārdevēju ref. info saraksts (atlasiet sarakstu vai kombinēto) un lielākā daļa hipersaites.
Trešās puses parādīsies ar nosaukumu "CC12345 - SC45678 - Lielais uzņēmums". "Lielā uzņēmuma korpuss" vietā. AddAdressInList=Rādīt klienta / pārdevēja adrešu sarakstu (izvēlieties sarakstu vai kombināciju)
Trešās puses parādīsies ar nosaukumu "Lielās kompānijas korpuss - 21 lēkt iela 123456", nevis "Lielā uzņēmuma korpuss". AskForPreferredShippingMethod=Pieprasiet vēlamo piegādes metodi trešajām pusēm. @@ -1286,7 +1288,7 @@ SupplierPaymentSetup=Pārdevēja maksājumu iestatīšana ##### Proposals ##### PropalSetup=Commercial priekšlikumi modulis uzstādīšana ProposalsNumberingModules=Komerciālie priekšlikumu numerācijas modeļi -ProposalsPDFModules=Komerciālie priekšlikumu dokumenti modeļi +ProposalsPDFModules=Komerciālie priekšlikumu dokumentu modeļi SuggestedPaymentModesIfNotDefinedInProposal=Ieteicamais maksājuma režīms pēc piedāvājuma pēc noklusējuma, ja tas nav definēts priekšlikumam FreeLegalTextOnProposal=Brīvais teksts komerciālajos priekšlikumos WatermarkOnDraftProposal=Ūdenszīme projektu komerciālo priekšlikumu (none ja tukšs) @@ -1545,7 +1547,7 @@ NewRSS=Jauna RSS barotne RSSUrl=RSS links RSSUrlExample=Interesants RSS ##### Mailing ##### -MailingSetup=Pasta vēstuļu sūtīšanas modulis iestatīšanu +MailingSetup=Pasta vēstuļu sūtīšanas moduļa iestatīšana MailingEMailFrom=Sūtītāja e-pasts (no) e-pasta moduļa sūtītajiem e-pastiem MailingEMailError=Atgriezties e-pastā (kļūdas) e-pastiem ar kļūdām MailingDelay=Seconds to wait after sending next message @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Moduļa Expense Reports iestatīšana - noteikumi ExpenseReportNumberingModules=Izdevumu pārskatu numerācijas modulis NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=Varat atrast e-pasta paziņojumu iespējas, iespējot un konfigurējot moduli "Paziņošana". -ListOfNotificationsPerUser=Paziņojumu saraksts katram lietotājam * -ListOfNotificationsPerUserOrContact=Paziņojumu (notikumu) saraksts, kas pieejami katram lietotājam * vai kontaktam ** -ListOfFixedNotifications=Fiksēto paziņojumu saraksts +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Atveriet lietotāja cilni "Paziņojumi", lai pievienotu vai noņemtu paziņojumus lietotājiem GoOntoContactCardToAddMore=Atveriet trešās personas cilni "Paziņojumi", lai pievienotu vai noņemtu paziņojumus par kontaktpersonām / adresēm Threshold=Slieksnis @@ -1898,6 +1900,11 @@ OnMobileOnly=Tikai mazam ekrānam (viedtālrunim) DisableProspectCustomerType=Atspējojiet "Prospect + Customer" trešās puses veidu (tādēļ trešai personai jābūt Prospect vai Klientam, bet nevar būt abas) MAIN_OPTIMIZEFORTEXTBROWSER=Vienkāršot saskarni neredzīgajiem MAIN_OPTIMIZEFORTEXTBROWSERDesc=Iespējojiet šo opciju, ja esat akls cilvēks, vai lietojat programmu no teksta pārlūkprogrammas, piemēram, Lynx vai Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Šo vērtību katrs lietotājs var pārrakstīt no lietotāja lapas - cilnes '%s' DefaultCustomerType="Jaunā klienta" izveides veidlapas noklusējuma trešās puses veids ABankAccountMustBeDefinedOnPaymentModeSetup=Piezīme. Lai veiktu šo funkciju, katra maksājuma režīma modulī (Paypal, Stripe, ...) ir jānosaka bankas konts. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Līniju skaits, kas jāparāda žurnāla cilnē UseDebugBar=Izmantojiet atkļūdošanas joslu DEBUGBAR_LOGS_LINES_NUMBER=Pēdējo žurnālu rindu skaits, kas jāsaglabā konsolē WarningValueHigherSlowsDramaticalyOutput=Brīdinājums, augstākas vērtības palēnina dramatisko izeju -DebugBarModuleActivated=Moduļa atkļūdošanas josla ir aktivizēta un palēnina saskarni +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Eksporta modeļi ir kopīgi ar visiem ExportSetup=Moduļa Eksportēšana iestatīšana InstanceUniqueID=Unikāls gadījuma ID @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=Jūs atradīsiet to savā IFTTT kontā EndPointFor=Beigu punkts %s: %s DeleteEmailCollector=Dzēst e-pasta kolekcionāru ConfirmDeleteEmailCollector=Vai tiešām vēlaties dzēst šo e-pasta kolekcionāru? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/lv_LV/banks.lang b/htdocs/langs/lv_LV/banks.lang index 4675ef3a14a..8c1b9e53a95 100644 --- a/htdocs/langs/lv_LV/banks.lang +++ b/htdocs/langs/lv_LV/banks.lang @@ -30,7 +30,7 @@ AllTime=No sākuma Reconciliation=Samierināšanās RIB=Bankas konta numurs IBAN=IBAN numurs -BIC=BIC / SWIFT kods +BIC=BIC/SWIFT kods SwiftValid=BIC / SWIFT derīgs SwiftVNotalid=BIC/SWIFT nav derīgs IbanValid=Derīgs BAN @@ -71,8 +71,8 @@ IdTransaction=Darījuma ID BankTransactions=Bankas ieraksti BankTransaction=Bankas ieraksts ListTransactions=Saraksta ieraksti -ListTransactionsByCategory=List entries/category -TransactionsToConciliate=Entries to reconcile +ListTransactionsByCategory=Ierakstu saraksti/ sadaļas +TransactionsToConciliate=Ieraksti, kas jāsaskaņo Conciliable=Var saskaņot Conciliate=Samierināt Conciliation=Samierināšanās @@ -100,8 +100,8 @@ NotReconciled=Nesaskaņot CustomerInvoicePayment=Klienta maksājums SupplierInvoicePayment=Piegādātāja maksājums SubscriptionPayment=Abonēšanas maksa -WithdrawalPayment=Debit payment order -SocialContributionPayment=Social/fiscal tax payment +WithdrawalPayment=Debeta maksājuma rīkojums +SocialContributionPayment=Sociālā/fiskālā nodokļa samaksa BankTransfer=Bankas pārskaitījums BankTransfers=Bankas pārskaitījumi MenuBankInternalTransfer=Iekšējā pārsūtīšana diff --git a/htdocs/langs/lv_LV/bills.lang b/htdocs/langs/lv_LV/bills.lang index 44f7d7838b1..1e20c7216ae 100644 --- a/htdocs/langs/lv_LV/bills.lang +++ b/htdocs/langs/lv_LV/bills.lang @@ -95,8 +95,9 @@ PaymentHigherThanReminderToPay=Maksājumu augstāka nekā atgādinājums par sam HelpPaymentHigherThanReminderToPay=Uzmanību! Viena vai vairāku rēķinu maksājuma summa ir lielāka par nesamaksāto summu.
Rediģējiet savu ierakstu, citādi apstipriniet un apsveriet iespēju izveidot kredītzīmi par pārsniegto saņemto summu par katru pārmaksāto rēķinu. HelpPaymentHigherThanReminderToPaySupplier=Uzmanību! Viena vai vairāku rēķinu maksājuma summa ir lielāka par nesamaksāto summu.
Rediģējiet savu ierakstu, citādi apstipriniet un apsveriet iespēju izveidot kredītzīmi par pārsniegto samaksu par katru pārmaksāto rēķinu. ClassifyPaid=Klasificēt "Apmaksāts" +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Klasificēt 'Apmaksāts daļēji' -ClassifyCanceled=Klasificēt "Abandoned" +ClassifyCanceled=Klasificēt “pamestu” ClassifyClosed=Klasificēt 'Slēgts' ClassifyUnBilled=Klasificēt "neapstiprinātas" CreateBill=Izveidot rēķinu @@ -207,13 +208,27 @@ NumberOfBillsByMonth=Rēķinu skaits mēnesī AmountOfBills=Rēķinu summa AmountOfBillsHT=Rēķinu summa (bez nodokļiem) AmountOfBillsByMonthHT=Summa rēķini mēnesī (neto pēc nodokļiem) -ShowSocialContribution=Show social/fiscal tax +ShowSocialContribution=Rādīt sociālo/fiskālo nodokli ShowBill=Rādīt rēķinu ShowInvoice=Rādīt rēķinu ShowInvoiceReplace=Rādīt aizstājošo rēķinu ShowInvoiceAvoir=Rādīt kredīta piezīmi -ShowInvoiceDeposit=Show down payment invoice +ShowInvoiceDeposit=Parādiet maksājuma rēķinu ShowInvoiceSituation=Rādīt situāciju rēķinu +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Rādīt maksājumu AlreadyPaid=Jau samaksāts AlreadyPaidBack=Jau atgriezta nauda @@ -221,14 +236,14 @@ AlreadyPaidNoCreditNotesNoDeposits=Jau samaksāts (bez kredīta piezīmes un nog Abandoned=Pamests RemainderToPay=Neapmaksāts RemainderToTake=Atlikusī summa, kas jāsaņem -RemainderToPayBack=Remaining amount to refund +RemainderToPayBack=Atlikušā summa atmaksai Rest=Gaida AmountExpected=Pieprasītā summa ExcessReceived=Saņemts pārpalikums ExcessPaid=Pārmaksātā summa EscompteOffered=Piedāvāta atlaide (maksājums pirms termiņa) EscompteOfferedShort=Atlaide -SendBillRef=Submission of invoice %s +SendBillRef=Rēķina iesniegšana %s SendReminderBillRef=Submission of invoice %s (reminder) StandingOrders=Tiešā debeta pasūtījumi StandingOrder=Tiešā debeta pasūtījums @@ -289,11 +304,11 @@ CreditNotesOrExcessReceived=Kredītkritumi vai saņemtie pārsniegumi Deposit=Sākuma maksājums Deposits=Sākuma maksājumi DiscountFromCreditNote=Atlaide no kredīta piezīmes %s -DiscountFromDeposit=Down payments from invoice %s +DiscountFromDeposit=Sākuma maksājumi no rēķina %s DiscountFromExcessReceived=Maksājumi, kas pārsniedz rēķinu %s DiscountFromExcessPaid=Maksājumi, kas pārsniedz rēķinu %s AbsoluteDiscountUse=Šis kredīta veids var izmantot rēķinā pirms tās apstiprināšanas -CreditNoteDepositUse=Invoice must be validated to use this kind of credits +CreditNoteDepositUse=Rēķins ir jāapstiprina, lai izmantotu šāda veida kredītus NewGlobalDiscount=Jauna absolūta atlaide NewRelativeDiscount=Jauna relatīva atlaide DiscountType=Atlaides veids @@ -377,12 +392,12 @@ PaymentConditionShortRECEP=Pienākas pēc saņemšanas PaymentConditionRECEP=Pienākas pēc saņemšanas PaymentConditionShort30D=30 dienas PaymentCondition30D=30 dienas -PaymentConditionShort30DENDMONTH=30 days of month-end -PaymentCondition30DENDMONTH=Within 30 days following the end of the month +PaymentConditionShort30DENDMONTH=30 dienas mēneša beigās +PaymentCondition30DENDMONTH=30 dienu laikā pēc mēneša beigām PaymentConditionShort60D=60 dienas PaymentCondition60D=60 dienas -PaymentConditionShort60DENDMONTH=60 days of month-end -PaymentCondition60DENDMONTH=Within 60 days following the end of the month +PaymentConditionShort60DENDMONTH=60 dienas mēneša beigās +PaymentCondition60DENDMONTH=60 dienu laikā pēc mēneša beigām PaymentConditionShortPT_DELIVERY=Piegāde PaymentConditionPT_DELIVERY=Pēc piegādes PaymentConditionShortPT_ORDER=Pasūtījums @@ -398,13 +413,13 @@ PaymentCondition14D=14 dienas PaymentConditionShort14DENDMONTH=Mēneša 14 dienas PaymentCondition14DENDMONTH=14 dienu laikā pēc mēneša beigām FixAmount=Fiksētā summa -VarAmount=Mainīgais apjoms (%% tot.) +VarAmount=Mainīgais apjoms (%% kop.) VarAmountOneLine=Mainīgā summa (%% kopā) - 1 rinda ar etiķeti '%s' # PaymentType PaymentTypeVIR=Bankas pārskaitījums PaymentTypeShortVIR=Bankas pārskaitījums -PaymentTypePRE=Direct debit payment order -PaymentTypeShortPRE=Debit payment order +PaymentTypePRE=Tiešā debeta maksājuma rīkojums +PaymentTypeShortPRE=Debeta maksājuma rīkojums PaymentTypeLIQ=Skaidra nauda PaymentTypeShortLIQ=Skaidra nauda PaymentTypeCB=Kredītkarte @@ -434,7 +449,7 @@ RegulatedOn=Regulēta uz ChequeNumber=Pārbaudiet N ° ChequeOrTransferNumber=Pārbaudiet / Transfer N ° ChequeBordereau=Pārbaudīt grafiku -ChequeMaker=Check/Transfer transmitter +ChequeMaker=Pārbaudiet / pārsūtiet raidītāju ChequeBank=Čeka izsniegšanas banka CheckBank=Čeks NetToBePaid=Neto jāmaksā @@ -489,7 +504,7 @@ ToMakePayment=Maksāt ToMakePaymentBack=Atmaksāt ListOfYourUnpaidInvoices=Saraksts ar neapmaksātiem rēķiniem NoteListOfYourUnpaidInvoices=Piezīme: Šis saraksts satur tikai rēķinus par trešo pušu Jums ir saistīti ar kā pārdošanas pārstāvis. -RevenueStamp=Ieņēmumi zīmogs +RevenueStamp=Ieņēmumu zīmogs YouMustCreateInvoiceFromThird=Šī opcija ir pieejama tikai tad, ja izveidojat rēķinu no trešās personas cilnes "Klients" YouMustCreateInvoiceFromSupplierThird=Šī opcija ir pieejama tikai tad, ja izveidojat rēķinu no trešās puses cilnes „Pārdevējs” YouMustCreateStandardInvoiceFirstDesc=Vispirms vispirms jāizveido standarta rēķins un jāpārveido tas par "veidni", lai izveidotu jaunu veidnes rēķinu diff --git a/htdocs/langs/lv_LV/companies.lang b/htdocs/langs/lv_LV/companies.lang index 349661c2a6f..aa373cac4f1 100644 --- a/htdocs/langs/lv_LV/companies.lang +++ b/htdocs/langs/lv_LV/companies.lang @@ -383,7 +383,7 @@ ChangeContactInProcess=Mainīt statusu uz 'Sazināšanās procesā' ChangeContactDone=Mainīt statusu uz 'Sazinājāmies' ProspectsByStatus=Perspektīvu statuss NoParentCompany=Nav -ExportCardToFormat=Eksporta karti formātā +ExportCardToFormat=Eksportēt karti uz formātu ContactNotLinkedToCompany=Kontakts nav saistīts ar trešajām personām DolibarrLogin=Dolibarr pieteikšanās NoDolibarrAccess=Nav Dolibarr piekļuve @@ -416,7 +416,7 @@ UniqueThirdParties=Trešo personu kopskaits InActivity=Atvērts ActivityCeased=Slēgts ThirdPartyIsClosed=Trešā persona ir slēgta -ProductsIntoElements=List of products/services into %s +ProductsIntoElements=Produktu/pakalpojumu saraksts %s CurrentOutstandingBill=Current outstanding bill OutstandingBill=Maks. par izcilu rēķinu OutstandingBillReached=Maks. par izcilu rēķinu diff --git a/htdocs/langs/lv_LV/compta.lang b/htdocs/langs/lv_LV/compta.lang index a5bfc0331a9..41f8c11125b 100644 --- a/htdocs/langs/lv_LV/compta.lang +++ b/htdocs/langs/lv_LV/compta.lang @@ -65,16 +65,16 @@ LT2SupplierIN=SGST pirkumi VATCollected=Iekasētais PVN ToPay=Jāsamaksā SpecialExpensesArea=Sadaļa visiem īpašajiem maksājumiem -SocialContribution=Social or fiscal tax -SocialContributions=Social or fiscal taxes +SocialContribution=Sociālais vai fiskālais nodoklis +SocialContributions=Sociālie vai fiskālie nodokļi SocialContributionsDeductibles=Atskaitāmi sociālie vai fiskālie nodokļi SocialContributionsNondeductibles=Nekonkurējoši sociālie vai fiskālie nodokļi LabelContrib=Marķējuma ieguldījums TypeContrib=Veida iemaksa MenuSpecialExpenses=Īpašie izdevumi MenuTaxAndDividends=Nodokļi un dividendes -MenuSocialContributions=Social/fiscal taxes -MenuNewSocialContribution=New social/fiscal tax +MenuSocialContributions=Sociālie/fiskālie nodokļi +MenuNewSocialContribution=Jauns sociālais/fiskālais nodoklis NewSocialContribution=New social/fiscal tax AddSocialContribution=Pievienot sociālo / fiskālo nodokli ContributionsToPay=Social/fiscal taxes to pay @@ -101,13 +101,13 @@ LT1PaymentES=RE Payment LT1PaymentsES=RE Payments LT2PaymentES=IRPF Maksājumu LT2PaymentsES=IRPF Maksājumi -VATPayment=Sales tax payment -VATPayments=Sales tax payments +VATPayment=Tirdzniecības nodokļa samaksa +VATPayments=Tirdzniecības nodokļa maksājumi VATRefund=PVN atmaksa NewVATPayment=Jauns apgrozījuma nodokļa maksājums NewLocalTaxPayment=Jauns nodokļa %s maksājums Refund=Atmaksa -SocialContributionsPayments=Social/fiscal taxes payments +SocialContributionsPayments=Sociālo/fiskālo nodokļu maksājumi ShowVatPayment=Rādīt PVN maksājumu TotalToPay=Summa BalanceVisibilityDependsOnSortAndFilters=Bilance ir redzama šajā sarakstā tikai tad, ja tabula ir sakārtota uz augšu %s un tiek filtrēta 1 bankas kontam. @@ -132,11 +132,11 @@ NewCheckDepositOn=Izveidot kvīti par depozīta kontā: %s NoWaitingChecks=No checks awaiting deposit. DateChequeReceived=Pārbaudiet uzņemšanas datumu NbOfCheques=Pārbaužu skaits -PaySocialContribution=Pay a social/fiscal tax +PaySocialContribution=Maksāt sociālo/fiskālo nodokli ConfirmPaySocialContribution=Vai tiešām vēlaties klasificēt šo sociālo vai fiskālo nodokli kā samaksātu? DeleteSocialContribution=Dzēst sociālo vai fiskālo nodokļu maksājumu ConfirmDeleteSocialContribution=Vai tiešām vēlaties dzēst šo sociālo / fiskālo nodokļu maksājumu? -ExportDataset_tax_1=Social and fiscal taxes and payments +ExportDataset_tax_1=Sociālie un fiskālie nodokļi un maksājumi CalcModeVATDebt=Mode %sVAT par saistību accounting%s. CalcModeVATEngagement=Mode %sVAT par ienākumu-expense%sS. CalcModeDebt=Zināma reģistrēto rēķinu analīze, pat ja tie vēl nav uzskaitīti virsgrāmatā. @@ -148,8 +148,8 @@ CalcModeLT1Rec= Mode %sRE on suppliers invoices%s CalcModeLT2= Mode %sIRPF on customer invoices - suppliers invoices%s CalcModeLT2Debt=Mode %sIRPF on customer invoices%s CalcModeLT2Rec= Mode %sIRPF on suppliers invoices%s -AnnualSummaryDueDebtMode=Līdzsvars ienākumiem un izdevumiem, gada kopsavilkums -AnnualSummaryInputOutputMode=Līdzsvars ienākumiem un izdevumiem, gada kopsavilkums +AnnualSummaryDueDebtMode=Ienākumu un izdevumu bilance, gada kopsavilkums +AnnualSummaryInputOutputMode=Ienākumu un izdevumu bilance, gada kopsavilkums AnnualByCompanies=Ieņēmumu un izdevumu līdzsvars pēc iepriekš definētām kontu grupām AnnualByCompaniesDueDebtMode=Ieņēmumu un izdevumu bilance, detalizēti pēc iepriekš definētām grupām, režīms %sClaims-Debts%s norādīja Saistību grāmatvedība . AnnualByCompaniesInputOutputMode=Ieņēmumu un izdevumu līdzsvars, detalizēti pēc iepriekš definētām grupām, režīms %sIncomes-Expenses%s norādīja naudas līdzekļu uzskaiti . diff --git a/htdocs/langs/lv_LV/dict.lang b/htdocs/langs/lv_LV/dict.lang index 21b821fa218..a56b6837c4a 100644 --- a/htdocs/langs/lv_LV/dict.lang +++ b/htdocs/langs/lv_LV/dict.lang @@ -197,7 +197,7 @@ CountryPM=Senpjēra un Mikelona CountryVC=Sentvinsenta un Grenadīnas CountryWS=Samoa CountrySM=San Marino -CountryST=Santome un Prinsipi +CountryST=Santome un Principe CountryRS=Serbija CountrySC=Seišelu salas CountrySL=Sierra Leone diff --git a/htdocs/langs/lv_LV/ecm.lang b/htdocs/langs/lv_LV/ecm.lang index b6db88ee895..c0290037ad5 100644 --- a/htdocs/langs/lv_LV/ecm.lang +++ b/htdocs/langs/lv_LV/ecm.lang @@ -35,7 +35,7 @@ ECMDocsByUsers=Ar lietotājiem saistītie dokumenti ECMDocsByInterventions=Documents linked to interventions ECMDocsByExpenseReports=Ar izdevumu ziņojumiem saistītie dokumenti ECMDocsByHolidays=Ar brīvdienām saistītie dokumenti -ECMDocsBySupplierProposals=Dokumenti, kas saistīti ar piegādātāju priekšlikumiem +ECMDocsBySupplierProposals=Dokumenti, kas saistīti ar pārdevēja priekšlikumiem ECMNoDirectoryYet=Nav izveidots katalogs ShowECMSection=Rādīt katalogu DeleteSection=Dzēst direktoriju diff --git a/htdocs/langs/lv_LV/errors.lang b/htdocs/langs/lv_LV/errors.lang index a86ec95eb85..27836af5be3 100644 --- a/htdocs/langs/lv_LV/errors.lang +++ b/htdocs/langs/lv_LV/errors.lang @@ -55,7 +55,7 @@ ErrorDirNotFound=Directory %s nav atrasts (Bad ceļš, aplamas tiesības ErrorFunctionNotAvailableInPHP=Funkcija %s ir nepieciešama šī funkcija, bet nav pieejams šajā versijā / uzstādīšanas PHP. ErrorDirAlreadyExists=Direrktorija ar šādu nosaukumu jau pastāv. ErrorFileAlreadyExists=Fails ar šādu nosaukumu jau eksistē. -ErrorPartialFile=Fails nav saņēmusi pilnīgi ar serveri. +ErrorPartialFile=Serveris failu nav saņemis pilnīgi. ErrorNoTmpDir=Pagaidu direktorija %s neeksistē. ErrorUploadBlockedByAddon=Augšupielāde bloķēja ar PHP/Apache spraudni. ErrorFileSizeTooLarge=Faila izmērs ir pārāk liels. @@ -64,7 +64,7 @@ ErrorSizeTooLongForVarcharType=Izmērs ir pārāk garš (%s simboli maksimums) ErrorNoValueForSelectType=Lūdzu izvēlieties vērtību no saraksta ErrorNoValueForCheckBoxType=Lūdzu, aizpildiet vērtību rūtiņu sarakstā ErrorNoValueForRadioType=Lūdzu, aizpildiet vērtību radio pogu sarakstā -ErrorBadFormatValueList=The list value cannot have more than one comma: %s, but need at least one: key,value +ErrorBadFormatValueList=Saraksta vērtībā nedrīkst būt vairāk par vienu komatu: %s , bet tai ir nepieciešams vismaz viena: atslēga, vērtība ErrorFieldCanNotContainSpecialCharacters=Laukā %s nedrīkst būt īpašas rakstzīmes. ErrorFieldCanNotContainSpecialNorUpperCharacters=Laukā %s nedrīkst būt speciālās rakstzīmes vai lielformāta rakstzīmes, un tajos nedrīkst būt tikai cipari. ErrorFieldMustHaveXChar=Laukā %sjābūt vismaz %s rakstzīmēm. @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Speciālās rakstzīmes nav atļautas laukam ErrorNumRefModel=Norāde pastāv to datubāzē (%s), un tas nav saderīgs ar šo numerācijas noteikuma. Noņemt ierakstu vai pārdēvēts atsauci, lai aktivizētu šo moduli. ErrorQtyTooLowForThisSupplier=Šim pārdevējam pārāk zems daudzums vai cena, kas šai precei nav noteikta šim pārdevējam ErrorOrdersNotCreatedQtyTooLow=Daži pasūtījumi nav izveidoti jo pārāk mazs daudzums -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complet +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Kļūda masku ErrorBadMaskFailedToLocatePosOfSequence=Kļūda, maska ​​bez kārtas numuru ErrorBadMaskBadRazMonth=Kļūdas, slikta reset vērtība @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s jāsāk ar http: // vai https: // ErrorNewRefIsAlreadyUsed=Kļūda, jaunā atsauce jau ir izmantota ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Kļūda, dzēšot maksājumu, kas sasaistīts ar slēgtu rēķinu. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Noklikšķiniet šeit, lai iestatītu obligātos parametrus WarningEnableYourModulesApplications=Noklikšķiniet šeit, lai iespējotu moduļus un lietojumprogrammas diff --git a/htdocs/langs/lv_LV/exports.lang b/htdocs/langs/lv_LV/exports.lang index 043b2ee0583..4f7708caaea 100644 --- a/htdocs/langs/lv_LV/exports.lang +++ b/htdocs/langs/lv_LV/exports.lang @@ -13,11 +13,11 @@ NotImportedFields=Jomas avota failā nav importēti SaveExportModel=Saglabājiet atlases kā eksporta profilu / veidni (atkārtotai izmantošanai). SaveImportModel=Saglabājiet šo importa profilu (lai to atkārtoti izmantotu) ... ExportModelName=Eksportēšanas profila nosaukums -ExportModelSaved=Eksporta profils tiek saglabāts kā %s . +ExportModelSaved=Eksporta profils tiek saglabāts kā %s. ExportableFields=Eksportējami lauki ExportedFields=Eksportēti lauki ImportModelName=Importēšanas profila nosaukums -ImportModelSaved=Importa profils tiek saglabāts kā %s . +ImportModelSaved=Importa profils tiek saglabāts kā %s. DatasetToExport=Datu kopas eksports DatasetToImport=Importēt failu datu kopā ChooseFieldsOrdersAndTitle=Izvēlieties lauku secību ... @@ -44,7 +44,7 @@ LineDescription=Līnijas apraksts LineUnitPrice=Vienības cenas līnija LineVATRate=PVN likme līnijas LineQty=Daudzums līnijas -LineTotalHT=Summa bez nodokļiem līnijas +LineTotalHT=Summa, neskaitot nodoklis par līniju LineTotalTTC=Summa ar nodokļiem līniju LineTotalVAT=PVN summu, par līnijas TypeOfLineServiceOrProduct=Veids (0=produkts, 1=pakalpojums) @@ -68,7 +68,7 @@ FieldsTarget=Mērķtiecīga lauki FieldTarget=Mērķtiecīga lauks FieldSource=Avota lauks NbOfSourceLines=Līniju skaits avota failā -NowClickToTestTheImport=Pārbaudiet iestatīto importēšanas iestatījumu (pārbaudiet, vai jums ir jāizslēdz galvenes līnijas vai arī tās tiks atzīmētas kā kļūdas nākamajā simulācijā).
Noklikšķiniet uz pogas %s , lai veiktu čeku no faila struktūras / satura un imitē importa procesu.
Jūsu datubāzē dati netiks mainīti . +NowClickToTestTheImport=Pārbaudiet, vai faila formāts (lauka un virknes norobežotāji) atbilst redzamajām opcijām un ka esat izlaidis galvenes rindu, vai arī šie simboli tiks atzīmēti kā kļūdas.
Noklikšķiniet uz " %s "poga, lai veiktu faila struktūras / satura pārbaudi un imitētu importa procesu.
Jūsu datu bāzē dati netiks mainīti . RunSimulateImportFile=Palaist importa simulāciju FieldNeedSource=Šim laukam nepieciešami dati no avota faila SomeMandatoryFieldHaveNoSource=Daži obligātie lauki nav avotu, no datu faila @@ -78,14 +78,14 @@ SelectAtLeastOneField=Pārslēgt vismaz vienu avota lauku slejā jomās eksport SelectFormat=Izvēlieties šo importa failu formātu RunImportFile=Importēt datus NowClickToRunTheImport=Pārbaudiet importa simulācijas rezultātus. Labojiet kļūdas un atkārtojiet testu.
Kad simulācijā nav kļūdu, jūs varat turpināt importēt datus datu bāzē. -DataLoadedWithId=Visi dati tiks ielādēti ar šādu importa ID: %s , lai iespējotu meklēšanu šajā datu kopā, ja nākotnē atklāsiet problēmas. +DataLoadedWithId=Importētajiem datiem katrā datu bāzes tabulā būs papildu lauks ar šo ievešanas ID: %s , lai ļautu tai atrast meklēšanu, ja tiek izmeklēta ar šo importu saistīta problēma. ErrorMissingMandatoryValue=Obligātie dati avota failā ir tukši laukā %s . TooMuchErrors=Vēl ir %s citas avota līnijas ar kļūdām, taču izlaide ir ierobežota. TooMuchWarnings=Vēl ir %s citas avota līnijas ar brīdinājumiem, bet izlaide ir ierobežota. EmptyLine=Tukšas līnijas (tiks izmestas) CorrectErrorBeforeRunningImport=Jums ir jāizlabo visas kļūdas pirms varat veikt importu. FileWasImported=Fails tika importēts ar numuru %s. -YouCanUseImportIdToFindRecord=Jūs varat atrast visus importētos ierakstus savā datubāzē, filtrējot laukā import_key = '%s' . +YouCanUseImportIdToFindRecord=Visus importētos ierakstus varat atrast savā datu bāzē, filtrējot laukā import_key = '%s' . NbOfLinesOK=Skaits līniju bez kļūdām un bez brīdinājumiem: %s. NbOfLinesImported=Skaits līniju veiksmīgi importēto: %s. DataComeFromNoWhere=Vērtību, lai ievietotu nāk no nekur avota failā. @@ -100,8 +100,8 @@ SourceExample=Piemērs par iespējamo datu vērtības ExampleAnyRefFoundIntoElement=Jebkura atsauce atrasts elementu %s ExampleAnyCodeOrIdFoundIntoDictionary=Any code (or id) found into dictionary %s CSVFormatDesc= Kumijas atdalītas vērtības faila formāts (.csv).
Šis ir teksta faila formāts, kurā lauki atdala ar atdalītāju [%s]. Ja lauka saturā atrodas atdalītājs, lauku noapaļo apaļa formā [%s]. Escape raksturs, lai izvairītos no apaļa raksturs ir [%s]. -Excel95FormatDesc= Excel faila formāts (.xls)
Šis ir iekšējais Excel 95 formāts (BIFF5). -Excel2007FormatDesc= Excel faila formāts (.xlsx)
Šis ir vietējais Excel 2007 formāts (SpreadsheetML). +Excel95FormatDesc=Excel faila formāts (.xls)
Šis ir iekšējais Excel 95 formāts (BIFF5). +Excel2007FormatDesc=Excel faila formāts (.xlsx)
Šis ir Excel 2007 formāts (SpreadsheetML). TsvFormatDesc=Tab atdalītu vērtību failu formāts (. TSV)
Tas ir teksta faila formāts, kur lauki ir atdalīti ar tabulācijas [Tab]. ExportFieldAutomaticallyAdded=Field %s was automatically added. It will avoid you to have similar lines to be treated as duplicate record (with this field added, all lines will own their own id and will differ). CsvOptions=CSV formāta opcijas @@ -109,14 +109,14 @@ Separator=Lauka atdalītājs Enclosure=Virknes atdalītājs SpecialCode=Speciāls kods ExportStringFilter=%% allows replacing one or more characters in the text -ExportDateFilter=YYYY, YYYYMM, YYYYMMDD : filters by one year/month/day
YYYY+YYYY, YYYYMM+YYYYMM, YYYYMMDD+YYYYMMDD : filters over a range of years/months/days
> YYYY, > YYYYMM, > YYYYMMDD : filters on all following years/months/days
< YYYY, < YYYYMM, < YYYYMMDD : filters on all previous years/months/days +ExportDateFilter=YYYY, YYYYMM, YYYYMMDD: filtri par vienu gadu / mēnesi / dienu, YYYY + YYYY, YYYYMM + YYYYMM, YYYYMMDD + YYYYMMDD: filtri ilgāk par gadiem / mēnešiem / dienām
> GGGG,> GGGGM,> GGGGMDD : filtri visos nākamajos gados / mēnešos / dienās, NNNNN + NNNNN filtrus vērtību diapazonā
> NNNNN filtri ar lielākām vērtībām ImportFromLine=Importēt, sākot ar līnijas numuru EndAtLineNb=End at line number -ImportFromToLine=Ierobežojuma diapazons (no - līdz), piem. izlaist galvenes līniju -SetThisValueTo2ToExcludeFirstLine=For example, set this value to 3 to exclude the 2 first lines -KeepEmptyToGoToEndOfFile=Saglabājiet šo lauku tukšu, lai pārietu uz faila beigām -SelectPrimaryColumnsForUpdateAttempt=Atlasiet kolonnu (-es), kuru izmantojat kā primāro atslēgu atjaunināšanas mēģinājumam +ImportFromToLine=Limit diapazons (no - līdz), piem. lai izlaistu virsraksta rindu (-as) +SetThisValueTo2ToExcludeFirstLine=Piemēram, iestatiet šo vērtību uz 3, lai izslēgtu 2 pirmās rindas.
Ja galvenes rindas NAV izlaistas, tas izraisīs vairākas kļūdas importa modelēšanā. +KeepEmptyToGoToEndOfFile=Saglabājiet šo lauku tukšu, lai apstrādātu visas rindas līdz faila beigām. +SelectPrimaryColumnsForUpdateAttempt=Atlasiet kolonnu (-as), ko izmantot kā primāro atslēgu UPDATE importēšanai UpdateNotYetSupportedForThisImport=Šī veida importa atjaunināšana nav atbalstīta (tikai ievietot). NoUpdateAttempt=Netika veikts atjaunināšanas mēģinājums, tikai ievietojiet ImportDataset_user_1=Lietotāji (darbinieki vai ne) un īpašumi @@ -124,7 +124,7 @@ ComputedField=Aprēķinātais lauks ## filters SelectFilterFields=Ja jūs vēlaties filtrēt dažas vērtības, vienkārši ievadi vērtības šeit. FilteredFields=Filtrētie lauki -FilteredFieldsValues=Cenas filtru +FilteredFieldsValues=Filtra vērtība FormatControlRule=Format control rule ## imports updates KeysToUseForUpdates=Atslēga (sleja), ko izmantot esošo datu atjaunināšanai diff --git a/htdocs/langs/lv_LV/help.lang b/htdocs/langs/lv_LV/help.lang index 48124086432..0482ffc903b 100644 --- a/htdocs/langs/lv_LV/help.lang +++ b/htdocs/langs/lv_LV/help.lang @@ -1,7 +1,7 @@ # Dolibarr language file - Source file is en_US - help CommunitySupport=Forums / Vikipēdijas atbalsts EMailSupport=E-pasta atbalsts -RemoteControlSupport=Tiešsaistes reālā laika / tālvadības atbalsts +RemoteControlSupport=Tiešsaistes reālā laika/tālvadības atbalsts OtherSupport=Cits atbalsts ToSeeListOfAvailableRessources=Lai sazinātos / skatītu pieejamos resursus: HelpCenter=Palīdzības centrs diff --git a/htdocs/langs/lv_LV/holiday.lang b/htdocs/langs/lv_LV/holiday.lang index 943bea2de07..c47d52c0704 100644 --- a/htdocs/langs/lv_LV/holiday.lang +++ b/htdocs/langs/lv_LV/holiday.lang @@ -77,12 +77,12 @@ UserCP=Lietotājs ErrorAddEventToUserCP=Pievienojot ārpuskārtas atvaļinājumu, radās kļūda. AddEventToUserOkCP=Par ārkārtas atvaļinājumu papildinājums ir pabeigta. MenuLogCP=Skatīt izmaiņu žurnālus -LogCP=Log of updates of available vacation days +LogCP=Pieejamo atvaļinājumu dienu atjauninājumu žurnāls ActionByCP=Veic UserUpdateCP=Lietotājam PrevSoldeCP=Iepriekšējā bilance NewSoldeCP=Jana Bilance -alreadyCPexist=A leave request has already been done on this period. +alreadyCPexist=Šajā periodā atvaļinājuma pieprasījums jau ir veikts. FirstDayOfHoliday=Pirmā atvaļinājuma diena LastDayOfHoliday=Pēdēja atvaļinājuma diena BoxTitleLastLeaveRequests=Jaunākie %s labotie atvaļinājumu pieprasījumi @@ -101,7 +101,7 @@ LEAVE_SICK=Slimības lapa LEAVE_OTHER=Cits atvaļinājums LEAVE_PAID_FR=Apmaksāts atvaļinājums ## Configuration du Module ## -LastUpdateCP=Jaunākais automātiska atvaļinājuma piešķiršanas atjaunināšana +LastUpdateCP=Jaunākais atvaļinājumu piešķiršanas atjauninājums MonthOfLastMonthlyUpdate=Pēdējā automātiskā atvaļinājuma piešķiršanas mēneša pēdējā mēneša laikā UpdateConfCPOK=Veiksmīgi atjaunināta. Module27130Name= Atvaļinājuma pieprasījumu pārvaldība diff --git a/htdocs/langs/lv_LV/install.lang b/htdocs/langs/lv_LV/install.lang index 615fb3cce42..28d768c312e 100644 --- a/htdocs/langs/lv_LV/install.lang +++ b/htdocs/langs/lv_LV/install.lang @@ -4,7 +4,7 @@ MiscellaneousChecks=Priekšnoteikumu pārbaude ConfFileExists=Konfigurācijas fails %s eksistē. ConfFileDoesNotExistsAndCouldNotBeCreated=Konfigurācijas fails %s nepastāv un to nevarēja izveidot! ConfFileCouldBeCreated=Konfigurācijas failu %s var izveidot. -ConfFileIsNotWritable=Konfigurācijas fails %s nav rakstāms. Pārbaudīt atļaujas. Pirmajai instalēšanai jūsu tīmekļa serverim jāspēj rakstīt šajā failā konfigurācijas procesa laikā ("chmod 666", piemēram, operētājsistēmā Unix, piemēram). +ConfFileIsNotWritable=Konfigurācijas failā %s nevar ierakstīt. Pārbaudīt atļaujas. Pirmajai instalēšanai jūsu tīmekļa serverim jāspēj rakstīt šajā failā konfigurācijas procesa laikā ("chmod 666", piemērs, operētājsistēmai Unix). ConfFileIsWritable=Konfigurācijas failā %s var ierakstīt. ConfFileMustBeAFileNotADir=Konfigurācijas failam %s jābūt failam, nevis direktorijai. ConfFileReload=Pārsūtot parametrus no konfigurācijas faila. @@ -40,7 +40,7 @@ License=Izmantojot licenci ConfigurationFile=Konfigurācijas fails WebPagesDirectory=Katalogs kur web lapas tiek uzglabātas DocumentsDirectory=Direktorija kurā uzglabāt augšupielādētos un ģenerētos dokumentus -URLRoot=URL Root +URLRoot=URL sakne ForceHttps=Piespiedu drošais savienojums (https) CheckToForceHttps=Pārbaudiet šo opciju, lai piespiestu drošus savienojumus (https).
Tas nozīmē, ka tīmekļa serveris ir konfigurēts ar SSL sertifikātu. DolibarrDatabase=Dolibarr datubāze diff --git a/htdocs/langs/lv_LV/main.lang b/htdocs/langs/lv_LV/main.lang index 96717fe3a56..567160c1ec8 100644 --- a/htdocs/langs/lv_LV/main.lang +++ b/htdocs/langs/lv_LV/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakti / adreses par šīs trešās personas AddressesForCompany=Šīs trešās puses adreses ActionsOnCompany=Notikumi šai trešajai pusei ActionsOnContact=Notikumi šim kontaktam / adresei +ActionsOnContract=Events for this contract ActionsOnMember=Pasākumi par šo locekli ActionsOnProduct=Notikumi ar šo produktu NActionsLate=%s vēlu @@ -759,6 +760,7 @@ LinkToSupplierProposal=Saite uz pārdevēja priekšlikumu LinkToSupplierInvoice=Saite uz piegādātāja rēķinu LinkToContract=Saite uz līgumu LinkToIntervention=Saikne ar intervenci +LinkToTicket=Link to ticket CreateDraft=Izveidot melnrakstu SetToDraft=Atpakaļ uz melnrakstu ClickToEdit=Klikšķiniet, lai rediģētu diff --git a/htdocs/langs/lv_LV/products.lang b/htdocs/langs/lv_LV/products.lang index 7db31a84a8e..afa35a4b839 100644 --- a/htdocs/langs/lv_LV/products.lang +++ b/htdocs/langs/lv_LV/products.lang @@ -2,6 +2,7 @@ ProductRef=Produkta ref. ProductLabel=Produkta marķējums ProductLabelTranslated=Tulkots produkta nosaukums +ProductDescription=Product description ProductDescriptionTranslated=Tulkotā produkta apraksts ProductNoteTranslated=Tulkota produkta piezīme ProductServiceCard=Produktu / Pakalpojumu kartiņa diff --git a/htdocs/langs/lv_LV/stripe.lang b/htdocs/langs/lv_LV/stripe.lang index 32c2bb4722f..ae403d0fee8 100644 --- a/htdocs/langs/lv_LV/stripe.lang +++ b/htdocs/langs/lv_LV/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=Lietotāja konts, lai izmantotu e-pasta paziņojumu StripePayoutList=Svītru izmaksu saraksts ToOfferALinkForTestWebhook=Saite uz iestatījumu Stripe WebHook, lai izsauktu IPN (testa režīms) ToOfferALinkForLiveWebhook=Saite uz iestatījumu Stripe WebHook, lai izsauktu IPN (tiešraides režīms) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/lv_LV/withdrawals.lang b/htdocs/langs/lv_LV/withdrawals.lang index 841f1627174..f91254633f6 100644 --- a/htdocs/langs/lv_LV/withdrawals.lang +++ b/htdocs/langs/lv_LV/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Izstāšanās fails SetToStatusSent=Nomainīt uz statusu "Fails nosūtīts" ThisWillAlsoAddPaymentOnInvoice=Tas arī ierakstīs maksājumus rēķiniem un klasificēs tos kā "Apmaksātais", ja atlikušais maksājums ir nulle StatisticsByLineStatus=Statistics by status of lines -RUM=RUM +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unikāla pilnvaru atsauce RUMWillBeGenerated=Ja tukša, UMR (Unique Mandate Reference) tiks ģenerēta, tiklīdz tiks saglabāta bankas konta informācija. WithdrawMode=Tiešā debeta režīms (FRST vai RECUR) diff --git a/htdocs/langs/mk_MK/accountancy.lang b/htdocs/langs/mk_MK/accountancy.lang index 758d9c340a5..1fc3b3e05ec 100644 --- a/htdocs/langs/mk_MK/accountancy.lang +++ b/htdocs/langs/mk_MK/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/mk_MK/admin.lang b/htdocs/langs/mk_MK/admin.lang index c021eeb4cff..fc4715fc86d 100644 --- a/htdocs/langs/mk_MK/admin.lang +++ b/htdocs/langs/mk_MK/admin.lang @@ -574,7 +574,7 @@ Module510Name=Плати Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/mk_MK/bills.lang b/htdocs/langs/mk_MK/bills.lang index aef2b5fce2f..10e23576099 100644 --- a/htdocs/langs/mk_MK/bills.lang +++ b/htdocs/langs/mk_MK/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/mk_MK/errors.lang b/htdocs/langs/mk_MK/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/mk_MK/errors.lang +++ b/htdocs/langs/mk_MK/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/mk_MK/main.lang b/htdocs/langs/mk_MK/main.lang index 7fee58b853b..0982c8b0195 100644 --- a/htdocs/langs/mk_MK/main.lang +++ b/htdocs/langs/mk_MK/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/mk_MK/products.lang b/htdocs/langs/mk_MK/products.lang index 7b68f5b3ebd..73e672284de 100644 --- a/htdocs/langs/mk_MK/products.lang +++ b/htdocs/langs/mk_MK/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/mk_MK/stripe.lang b/htdocs/langs/mk_MK/stripe.lang index 7a3389f34b7..c5224982873 100644 --- a/htdocs/langs/mk_MK/stripe.lang +++ b/htdocs/langs/mk_MK/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/mk_MK/withdrawals.lang b/htdocs/langs/mk_MK/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/mk_MK/withdrawals.lang +++ b/htdocs/langs/mk_MK/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/mn_MN/accountancy.lang b/htdocs/langs/mn_MN/accountancy.lang index 758d9c340a5..1fc3b3e05ec 100644 --- a/htdocs/langs/mn_MN/accountancy.lang +++ b/htdocs/langs/mn_MN/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/mn_MN/admin.lang b/htdocs/langs/mn_MN/admin.lang index f30d6edd9f7..2e27c6fe81f 100644 --- a/htdocs/langs/mn_MN/admin.lang +++ b/htdocs/langs/mn_MN/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/mn_MN/bills.lang b/htdocs/langs/mn_MN/bills.lang index 4f114d4df1c..53535e58b46 100644 --- a/htdocs/langs/mn_MN/bills.lang +++ b/htdocs/langs/mn_MN/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/mn_MN/errors.lang b/htdocs/langs/mn_MN/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/mn_MN/errors.lang +++ b/htdocs/langs/mn_MN/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/mn_MN/main.lang b/htdocs/langs/mn_MN/main.lang index cd5066560a2..5f83892413d 100644 --- a/htdocs/langs/mn_MN/main.lang +++ b/htdocs/langs/mn_MN/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/mn_MN/products.lang b/htdocs/langs/mn_MN/products.lang index 7b68f5b3ebd..73e672284de 100644 --- a/htdocs/langs/mn_MN/products.lang +++ b/htdocs/langs/mn_MN/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/mn_MN/stripe.lang b/htdocs/langs/mn_MN/stripe.lang index 7a3389f34b7..c5224982873 100644 --- a/htdocs/langs/mn_MN/stripe.lang +++ b/htdocs/langs/mn_MN/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/mn_MN/withdrawals.lang b/htdocs/langs/mn_MN/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/mn_MN/withdrawals.lang +++ b/htdocs/langs/mn_MN/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/nb_NO/accountancy.lang b/htdocs/langs/nb_NO/accountancy.lang index 1357c7572c0..600e7ed6a76 100644 --- a/htdocs/langs/nb_NO/accountancy.lang +++ b/htdocs/langs/nb_NO/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Regnskapsjournaler AccountingJournal=Regnskapsjournal NewAccountingJournal=Ny regnskapsjourna ShowAccoutingJournal=Vis regnskapsjournal -Nature=Natur +NatureOfJournal=Nature of Journal AccountingJournalType1=Diverse operasjoner AccountingJournalType2=Salg AccountingJournalType3=Innkjøp @@ -291,6 +291,7 @@ Modelcsv_quadratus=Eksport til Quadratus QuadraCompta Modelcsv_ebp=Eksport tilEBP Modelcsv_cogilog=Eksport til Cogilog Modelcsv_agiris=Eksport til Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Eksport for OpenConcerto (Test) Modelcsv_configurable=Eksport CSV Konfigurerbar Modelcsv_FEC=Eksporter FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Kontoplan ID InitAccountancy=Initier regnskap InitAccountancyDesc=Denne siden kan brukes til å initialisere en regnskapskonto for produkter og tjenester som ikke har en regnskapskonto definert for salg og kjøp. DefaultBindingDesc=Denne siden kan brukes til å sette en standardkonto til bruk for å for å koble transaksjonsposter om lønnsutbetaling, donasjon, skatter og MVA når ingen bestemt regnskapskonto er satt. -DefaultClosureDesc=Denne siden kan brukes til å angi parametere som skal brukes til å legge inn en balanse. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Innstillinger OptionModeProductSell=Salgsmodus OptionModeProductSellIntra=Modussalg eksportert i EU diff --git a/htdocs/langs/nb_NO/admin.lang b/htdocs/langs/nb_NO/admin.lang index 104b197123c..850c648f279 100644 --- a/htdocs/langs/nb_NO/admin.lang +++ b/htdocs/langs/nb_NO/admin.lang @@ -574,7 +574,7 @@ Module510Name=Lønn Module510Desc=Registrer og følg opp ansattebetalinger Module520Name=Lån Module520Desc=Administrering av lån -Module600Name=Varsler +Module600Name=Notifications on business event Module600Desc=Send epostvarsler utløst av en forretningshendelse): pr. bruker (oppsett definert for hver bruker), tredjeparts kontakt (oppsett definert for hver tredjepart) eller spesifikke eposter Module600Long=Vær oppmerksom på at denne modulen sender e-post i sanntid når en bestemt forretningshendelse oppstår. Hvis du leter etter en funksjon for å sende e-postpåminnelser for agendahendelser, går du inn i oppsettet av agendamodulen . Module610Name=Varevarianter @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Komplementære attributter (ordre) ExtraFieldsSupplierInvoices=Komplementære attributter (fakturaer) ExtraFieldsProject=Komplementære attributter (prosjekter) ExtraFieldsProjectTask=Komplementære attributter (oppgaver) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attributten %s har en feil verdi AlphaNumOnlyLowerCharsAndNoSpace=kun alfanumeriske tegn og små bokstaver uten mellomrom SendmailOptionNotComplete=Advarsel, på noen Linux-systemer, for å sende fra din e-post, må oppsettet av sendmail-kjøring inneholde opsjon -ba (parameter mail.force_extra_parameters i din php.ini fil). Hvis noen mottakere aldri mottar e-post, kan du prøve å redigere PHP parameter med mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session lagring kryptert av Suhosin ConditionIsCurrently=Tilstand er for øyeblikket %s YouUseBestDriver=Du bruker driver %s som er den beste driveren som er tilgjengelig for øyeblikket. YouDoNotUseBestDriver=Du bruker driveren %s. Driver %s anbefales. -NbOfProductIsLowerThanNoPb=Du har bare %s varer/tjenester i databasen. Ingen optimalisering er påkrevet +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Forbedre søket -YouHaveXProductUseSearchOptim=Du har %s varer i databasen. Du bør legge til konstanten PRODUCT_DONOTSEARCH_ANYWHERE til 1 i Hjem-Oppsett-Annet for å begrense søket til begynnelsen av strenger. Dette gjør det mulig for databasen å bruke indeksen og du bør få en raskere respons. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Du bruker nettleseren %s. Denne nettleseren er ok for sikkerhet og ytelse. BrowserIsKO=Du bruker nettleseren %s. Denne nettleseren er kjent for å være et dårlig valg for sikkerhet, ytelse og pålitelighet. Vi anbefaler deg å bruke Firefox, Chrome, Opera eller Safari. -XDebugInstalled=XDebug er lastet -XCacheInstalled=XCache er lastet +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Vis kunde/leverandør-ref i liste (velg liste eller kombinasjonsboks), og det meste av hyperkobling. Tredjepart vil vises med navnet "CC12345 - SC45678 - Stort selskap", i stedet for "Stort selskap". AddAdressInList=Vis liste over kunde-/leverandøradresseinfo (velg liste eller kombinasjonsboks)
Tredjeparter vil vises med et navnformat av "The Big Company Corp." - 21 Jump Street 123456 Big Town - USA "i stedet for" The Big Company Corp ". AskForPreferredShippingMethod=Spør etter foretrukket sendingsmetode for tredjeparter @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Oppsett av modul Utgiftsrapporter - Regler ExpenseReportNumberingModules=Utgiftsrapport nummereringsmodul NoModueToManageStockIncrease=Ingen modul i stand til å håndtere automatisk lagerøkning er blitt aktivert. Lagerøkning kan bare gjøres manuelt. YouMayFindNotificationsFeaturesIntoModuleNotification=Du kan finne alternativer for e-postmeldinger ved å aktivere og konfigurere modulen "Varslingen". -ListOfNotificationsPerUser=Liste over varslinger pr. bruker* -ListOfNotificationsPerUserOrContact=Liste over varsler (hendelser) tilgjengelig pr. bruker * eller pr. kontakt ** -ListOfFixedNotifications=Liste over faste varsler +ListOfNotificationsPerUser=Liste over automatiske varsler per bruker * +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=Liste over faste automatiske varslinger GoOntoUserCardToAddMore=Gå til fanen "Varslinger" hos en bruker for å legge til eller fjerne en varsling GoOntoContactCardToAddMore=Gå til fanen "Notefikasjoner" hos en tredjepart for å legge til notifikasjoner for kontakter/adresser Threshold=Terskel @@ -1898,6 +1900,11 @@ OnMobileOnly=Kun på små skjermer (smarttelefon) DisableProspectCustomerType=Deaktiver "Prospect + Customer" tredjeparts type (tredjepart må være prospekt eller kunde, men kan ikke være begge) MAIN_OPTIMIZEFORTEXTBROWSER=Forenkle grensesnitt for blinde personer MAIN_OPTIMIZEFORTEXTBROWSERDesc=Aktiver dette alternativet hvis du er blind, eller hvis du bruker programmet fra en tekstbrowser som Lynx eller Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Denne verdien kan overskrives av hver bruker fra brukersiden - fanen '%s' DefaultCustomerType=Standard tredjepartstype for "Ny kunde"-opprettingsskjema ABankAccountMustBeDefinedOnPaymentModeSetup=Merk: Bankkontoen må defineres i modulen for hver betalingsmodus (Paypal, Stripe, ...) for å få denne funksjonen til å fungere. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Antall linjer som skal vises under loggfanene UseDebugBar=Bruk feilsøkingsfeltet DEBUGBAR_LOGS_LINES_NUMBER=Nummer på siste logglinjer å beholde i konsollen WarningValueHigherSlowsDramaticalyOutput=Advarsel, høyere verdier reduserer resultatet dramatisk -DebugBarModuleActivated=Modul feilsøkingsfelt er aktivert og bremser grensesnittet dramatisk +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Eksportmodellene er delt med alle ExportSetup=Oppsett av modul Eksport InstanceUniqueID=Unik ID for forekomsten @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=Du finner den på din IFTTT-konto EndPointFor=Sluttpunkt for %s: %s DeleteEmailCollector=Slett e-postsamler ConfirmDeleteEmailCollector=Er du sikker på at du vil slette denne e-postsamleren? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/nb_NO/bills.lang b/htdocs/langs/nb_NO/bills.lang index 5cfdfb3c6e0..972bbbf4a5d 100644 --- a/htdocs/langs/nb_NO/bills.lang +++ b/htdocs/langs/nb_NO/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Betalingen er høyere enn restbeløp HelpPaymentHigherThanReminderToPay=NB! Innbetalingen av en eller flere fakturaer er høyere enn restbeløpet.
Endre oppføringen eller bekreft for å lage kreditnota av det overskytende for overbetalte fakturaer. HelpPaymentHigherThanReminderToPaySupplier=Vær oppmerksom på at betalingsbeløpet på en eller flere regninger er høyere enn gjenstående å betale.
Rediger oppføringen din, ellers bekreft og opprett en kredittnota av overskuddet betalt for hver overbetalt faktura. ClassifyPaid=Merk 'Betalt' +ClassifyUnPaid=Klassifiser 'Ubetalt' ClassifyPaidPartially=Merk 'Delbetalt' ClassifyCanceled=Merk 'Tapsført' ClassifyClosed=Merk 'Lukket' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Vis erstatningsfaktura ShowInvoiceAvoir=Vis kreditnota ShowInvoiceDeposit=Vis nedbetalingsfaktura ShowInvoiceSituation=Vis delfaktura +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=å betale på %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Vis betaling AlreadyPaid=Allerede betalt AlreadyPaidBack=Allerede tilbakebetalt diff --git a/htdocs/langs/nb_NO/errors.lang b/htdocs/langs/nb_NO/errors.lang index 3b286905bdd..0e078b11525 100644 --- a/htdocs/langs/nb_NO/errors.lang +++ b/htdocs/langs/nb_NO/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Spesialtegn er ikke tillatt for feltet "%s" ErrorNumRefModel=En referanse finnes i databasen (%s), og er ikke kompatibel med denne nummereringsregelen. Fjern posten eller omdøp referansen for å aktivere denne modulen. ErrorQtyTooLowForThisSupplier=Mengde for lav for denne leverandøren eller ingen pris angitt på dette produktet for denne leverandøren ErrorOrdersNotCreatedQtyTooLow=Noen ordrer er ikke opprettet på grunn av for lave mengder -ErrorModuleSetupNotComplete=Oppsett av modulen ser ikke ut til å være komplett. Gå til Hjem - Oppsett - Moduler for å fullføre. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Feil på maske ErrorBadMaskFailedToLocatePosOfSequence=Feil! Maske uten sekvensnummer ErrorBadMaskBadRazMonth=Feil, ikke korrekt tilbakestillingsverdi @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s må starte med http:// eller https:// ErrorNewRefIsAlreadyUsed=Feil, den nye referansen er allerede brukt ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Feil, å slette betaling knyttet til en lukket faktura er ikke mulig. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=Et passord ble satt for dette medlemmet, men ingen brukerkonto ble opprettet. Det fører til at passordet ikke kan benyttes for å logge inn på Dolibarr. Det kan brukes av en ekstern modul/grensesnitt, men hvis du ikke trenger å definere noen innlogging eller passord for et medlem, kan du deaktivere alternativet "opprett en pålogging for hvert medlem" fra medlemsmodul-oppsettet. Hvis du trenger å administrere en pålogging, men ikke trenger noe passord, kan du holde dette feltet tomt for å unngå denne advarselen. Merk: E-post kan også brukes som en pålogging dersom medlemmet er knyttet til en bruker. WarningMandatorySetupNotComplete=Klikk her for å sette opp obligatoriske parametere WarningEnableYourModulesApplications=Klikk her for å aktivere modulene og applikasjonene dine diff --git a/htdocs/langs/nb_NO/main.lang b/htdocs/langs/nb_NO/main.lang index 2eb11b9a9d1..12ce6966c2f 100644 --- a/htdocs/langs/nb_NO/main.lang +++ b/htdocs/langs/nb_NO/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakter/adresser for denne tredjepart AddressesForCompany=Adresser for tredjepart ActionsOnCompany=Hendelser for denne tredjeparten ActionsOnContact=Hendelser for denne kontakten/adressen +ActionsOnContract=Events for this contract ActionsOnMember=Hendelser om dette medlemmet ActionsOnProduct=Hendelser om denne varen NActionsLate=%s forsinket @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link til leverandørtilbud LinkToSupplierInvoice=Link til leverandørfaktura LinkToContract=Lenke til kontakt LinkToIntervention=Lenke til intervensjon +LinkToTicket=Link to ticket CreateDraft=Lag utkast SetToDraft=Tilbake til kladd ClickToEdit=Klikk for å redigere diff --git a/htdocs/langs/nb_NO/products.lang b/htdocs/langs/nb_NO/products.lang index e8cabae97da..f3ec0dcdb08 100644 --- a/htdocs/langs/nb_NO/products.lang +++ b/htdocs/langs/nb_NO/products.lang @@ -2,6 +2,7 @@ ProductRef=Vare ref. ProductLabel=Vareetikett ProductLabelTranslated=Oversatt produktetikett +ProductDescription=Product description ProductDescriptionTranslated=Oversatt produktbeskrivelse ProductNoteTranslated=Oversatt produktnotat ProductServiceCard=Kort for Varer/Tjenester diff --git a/htdocs/langs/nb_NO/stripe.lang b/htdocs/langs/nb_NO/stripe.lang index 431c64269fc..ff83e5b392b 100644 --- a/htdocs/langs/nb_NO/stripe.lang +++ b/htdocs/langs/nb_NO/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=Brukerkonto til bruk for e-postvarsling av noen Stri StripePayoutList=Liste over Stripe utbetalinger ToOfferALinkForTestWebhook=Link til oppsett av Stripe WebHook for oppkall av IPN (test-modus) ToOfferALinkForLiveWebhook=Link til oppsett av Stripe WebHook for oppkall av IPN (live-modus) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/nb_NO/withdrawals.lang b/htdocs/langs/nb_NO/withdrawals.lang index 12a9ddada5f..77931dbf507 100644 --- a/htdocs/langs/nb_NO/withdrawals.lang +++ b/htdocs/langs/nb_NO/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Tilbaketrekkingsfil SetToStatusSent=Sett status til "Fil Sendt" ThisWillAlsoAddPaymentOnInvoice=Dette vil også registrere innbetalinger til fakturaer og klassifisere dem som "Betalt" hvis restbeløp å betale er null StatisticsByLineStatus=Statistikk etter linjestatus -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unik Mandat Referanse RUMWillBeGenerated=Hvis tomt, vil UMR (Unique Mandate Reference) bli generert når bankkontoinformasjon er lagret WithdrawMode=Direktedebetsmodus (FRST eller RECUR) diff --git a/htdocs/langs/nl_NL/accountancy.lang b/htdocs/langs/nl_NL/accountancy.lang index c815dc9d158..f905175c2ed 100644 --- a/htdocs/langs/nl_NL/accountancy.lang +++ b/htdocs/langs/nl_NL/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Dagboeken AccountingJournal=Dagboek NewAccountingJournal=Nieuw dagboek ShowAccoutingJournal=Toon dagboek -Nature=Natuur +NatureOfJournal=Nature of Journal AccountingJournalType1=Overige bewerkingen AccountingJournalType2=Verkopen AccountingJournalType3=Aankopen @@ -291,6 +291,7 @@ Modelcsv_quadratus=Exporteren naar Quadratus QuadraCompta Modelcsv_ebp=Exporteren naar EBP Modelcsv_cogilog=Exporteren naar Cogilog Modelcsv_agiris=Exporteren naar Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Configureerbare CSV export Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Rekeningschema Id InitAccountancy=Instellen boekhouding InitAccountancyDesc=Deze pagina kan worden gebruikt om een ​​grootboekrekening toe te wijzen aan producten en services waarvoor geen grootboekrekening is gedefinieerd voor verkopen en aankopen. DefaultBindingDesc=Hier kunt u een standaard grootboekrekening koppelen aan salaris betalingen, donaties, belastingen en BTW, wanneer deze nog niet apart zijn ingesteld. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Opties OptionModeProductSell=Instellingen verkopen OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/nl_NL/admin.lang b/htdocs/langs/nl_NL/admin.lang index fd7b4ac1aae..b31c1579740 100644 --- a/htdocs/langs/nl_NL/admin.lang +++ b/htdocs/langs/nl_NL/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salarissen Module510Desc=Record and track employee payments Module520Name=Leningen Module520Desc=Het beheer van de leningen -Module600Name=Kennisgevingen +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Productvarianten @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Aanvullende kenmerken (orders) ExtraFieldsSupplierInvoices=Aanvullende kenmerken (facturen) ExtraFieldsProject=Aanvullende kenmerken (projecten) ExtraFieldsProjectTask=Aanvullende kenmerken (taken) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribuut %s heeft een verkeerde waarde. AlphaNumOnlyLowerCharsAndNoSpace=alleen alfanumerieke tekens en kleine letters zonder spatie SendmailOptionNotComplete=Waarschuwing, op sommige Linux-systemen, e-mail verzenden vanaf uw e-mail, sendmail uitvoering setup moet conatins optie-ba (parameter mail.force_extra_parameters in uw php.ini-bestand). Als sommige ontvangers nooit e-mails ontvangen, probeer dit PHP parameter bewerken met mail.force_extra_parameters =-ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Sessie opslag geencrypteerd door Suhosin ConditionIsCurrently=Voorwaarde is momenteel %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Zoekmachine optimalisatie -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=Xdebug is geladen. -XCacheInstalled=Xcache is geladen. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Opzetten van module onkostendeclaraties - regels ExpenseReportNumberingModules=Onkostenrapportage nummeringsmodule NoModueToManageStockIncrease=Geen module in staat om automatische voorraad toename beheren is geactiveerd. Stock verhoging zal worden gedaan via handmatige invoer. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=Lijst van meldingen per gebruiker* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Ga naar het tabblad "Meldingen" bij een relatie om meldingen voor contacten/adressen toe te voegen of te verwijderen Threshold=Drempel @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/nl_NL/bills.lang b/htdocs/langs/nl_NL/bills.lang index 00421a77b3b..cdaa069db64 100644 --- a/htdocs/langs/nl_NL/bills.lang +++ b/htdocs/langs/nl_NL/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Betaling hoger dan herinnering te betalen HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Let op, het betalingsbedrag van een of meer rekeningen is hoger dan het openstaande bedrag dat moet worden betaald.
Bewerk uw invoer, bevestig anders en overweeg een creditnota te maken voor het teveel betaalde. ClassifyPaid=Klassificeer 'betaald' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classificeer 'gedeeltelijk betaald' ClassifyCanceled=Classificeer 'verlaten' ClassifyClosed=Classificeer 'Gesloten' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Toon vervangingsfactuur ShowInvoiceAvoir=Toon creditnota ShowInvoiceDeposit=Bekijk factuurbetalingen ShowInvoiceSituation=Situatie factuur weergeven +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Toon betaling AlreadyPaid=Reeds betaald AlreadyPaidBack=Reeds terugbetaald diff --git a/htdocs/langs/nl_NL/errors.lang b/htdocs/langs/nl_NL/errors.lang index 661c92660c9..5417ae6daf2 100644 --- a/htdocs/langs/nl_NL/errors.lang +++ b/htdocs/langs/nl_NL/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Speciale tekens zijn niet toegestaan in het v ErrorNumRefModel=Er bestaat een verwijzing in de database (%s) en deze is niet compatibel met deze nummeringsregel. Verwijder de tabelregel of hernoem de verwijzing om deze module te activeren. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Het instellen van de module lijkt onvolledig. Ga naar Home - Setup - Modules om te voltooien. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Fout bij het masker ErrorBadMaskFailedToLocatePosOfSequence=Fout, masker zonder het volgnummer ErrorBadMaskBadRazMonth=Fout, slechte resetwaarde @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=Er is een wachtwoord ingesteld voor dit lid. Er is echter geen gebruikersaccount gemaakt. Dus dit wachtwoord is opgeslagen maar kan niet worden gebruikt om in te loggen bij Dolibarr. Het kan worden gebruikt door een externe module / interface, maar als u geen gebruikersnaam of wachtwoord voor een lid hoeft aan te maken, kunt u de optie "Beheer een login voor elk lid" in de module-setup van Member uitschakelen. Als u een login moet beheren maar geen wachtwoord nodig heeft, kunt u dit veld leeg houden om deze waarschuwing te voorkomen. Opmerking: e-mail kan ook worden gebruikt als login als het lid aan een gebruiker is gekoppeld. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/nl_NL/main.lang b/htdocs/langs/nl_NL/main.lang index 82620f9ab84..a4195e82691 100644 --- a/htdocs/langs/nl_NL/main.lang +++ b/htdocs/langs/nl_NL/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacten / adressen voor deze relatie AddressesForCompany=Adressen voor deze relatie ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events over dit lid ActionsOnProduct=Evenementen in dit product NActionsLate=%s is laat @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link naar contract LinkToIntervention=Link naar interventie +LinkToTicket=Link to ticket CreateDraft=Maak een ontwerp SetToDraft=Terug naar ontwerp ClickToEdit=Klik om te bewerken diff --git a/htdocs/langs/nl_NL/products.lang b/htdocs/langs/nl_NL/products.lang index a743fb9211c..1a7d0537a9c 100644 --- a/htdocs/langs/nl_NL/products.lang +++ b/htdocs/langs/nl_NL/products.lang @@ -2,6 +2,7 @@ ProductRef=Productreferentie ProductLabel=Naam ProductLabelTranslated=Vertaald product label +ProductDescription=Product description ProductDescriptionTranslated=Vertaalde product beschrijving ProductNoteTranslated=Vertaalde product aantekening ProductServiceCard=Producten / Dienstendetailkaart diff --git a/htdocs/langs/nl_NL/stripe.lang b/htdocs/langs/nl_NL/stripe.lang index b3f50b98772..770bd51df11 100644 --- a/htdocs/langs/nl_NL/stripe.lang +++ b/htdocs/langs/nl_NL/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/nl_NL/withdrawals.lang b/htdocs/langs/nl_NL/withdrawals.lang index 2fd0c894135..2e4a9746bee 100644 --- a/htdocs/langs/nl_NL/withdrawals.lang +++ b/htdocs/langs/nl_NL/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/pl_PL/accountancy.lang b/htdocs/langs/pl_PL/accountancy.lang index fae0558c485..81b47382431 100644 --- a/htdocs/langs/pl_PL/accountancy.lang +++ b/htdocs/langs/pl_PL/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Dzienniki kont księgowych AccountingJournal=Dziennik księgowy NewAccountingJournal=Nowy dziennik księgowy ShowAccoutingJournal=Wyświetl dziennik konta księgowego -Nature=Natura +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sprzedaż AccountingJournalType3=Zakupy @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Opcje OptionModeProductSell=Tryb sprzedaży OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/pl_PL/admin.lang b/htdocs/langs/pl_PL/admin.lang index 7cf5c8b6e13..e3e453b3b20 100644 --- a/htdocs/langs/pl_PL/admin.lang +++ b/htdocs/langs/pl_PL/admin.lang @@ -574,7 +574,7 @@ Module510Name=Wynagrodzenia Module510Desc=Record and track employee payments Module520Name=Kredyty Module520Desc=Zarządzanie kredytów -Module600Name=Powiadomienia +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Zamówienia uzupełniające (atrybuty) ExtraFieldsSupplierInvoices=Atrybuty uzupełniające (faktury) ExtraFieldsProject=Atrybuty uzupełniające (projektów) ExtraFieldsProjectTask=Atrybuty uzupełniające (zadania) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Atrybut% s ma nieprawidłową wartość. AlphaNumOnlyLowerCharsAndNoSpace=tylko alphanumericals i małe litery bez przestrzeni SendmailOptionNotComplete=Uwaga, w niektórych systemach Linux, aby wysłać e-mail z poczty elektronicznej, konfiguracja wykonanie sendmail musi conatins opcja-ba (mail.force_extra_parameters parametr w pliku php.ini). Jeśli nigdy niektórzy odbiorcy otrzymywać e-maile, spróbuj edytować ten parametr PHP z mail.force_extra_parameters =-ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Przechowywania sesji szyfrowane Suhosin ConditionIsCurrently=Stan jest obecnie% s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Pozycjonowanie -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug jest załadowany. -XCacheInstalled=XCache jest załadowany. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=Nie Moduł stanie zarządzać automatyczny wzrost akcji zostało aktywowane. Wzrost Zdjęcie zostanie zrobione tylko na ręczne wprowadzanie. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=Lista powiadomień na użytkownika* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Próg @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/pl_PL/bills.lang b/htdocs/langs/pl_PL/bills.lang index 55121d67d6c..5ec7c6593ca 100644 --- a/htdocs/langs/pl_PL/bills.lang +++ b/htdocs/langs/pl_PL/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Płatności wyższe niż upomnienie do zapłaty HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Klasyfikacja "wpłacono" +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Klasyfikacja "wpłacono częściowo" ClassifyCanceled=Klasyfikacja "Porzucono" ClassifyClosed=Klasyfikacja "zamknięte" @@ -214,6 +215,20 @@ ShowInvoiceReplace=Pokaż faktury zastępcze ShowInvoiceAvoir=Pokaż notę kredytową ShowInvoiceDeposit=Pokaż fakturę zaliczkową ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Pokaż płatności AlreadyPaid=Zapłacono AlreadyPaidBack=Zwrócono @@ -316,7 +331,7 @@ InvoiceRef=Nr referencyjny faktury InvoiceDateCreation=Data utworzenia faktury InvoiceStatus=Status faktury InvoiceNote=Notatka do faktury -InvoicePaid=Faktura paid +InvoicePaid=Faktura zapłacona OrderBilled=Order billed DonationPaid=Donation paid PaymentNumber=Numer płatności diff --git a/htdocs/langs/pl_PL/errors.lang b/htdocs/langs/pl_PL/errors.lang index 520c90cde06..5ba2ccf5418 100644 --- a/htdocs/langs/pl_PL/errors.lang +++ b/htdocs/langs/pl_PL/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Znaki specjalne nie są dozwolone dla pola "% ErrorNumRefModel=Odniesienia nie istnieje w bazie danych (%s) i nie jest zgodna z tą zasadą numeracji. Zmiana nazwy lub usuwanie zapisu w odniesieniu do aktywacji tego modułu. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Ustawienia modułu wyglądają na niekompletne. Idź do Strona główna - Konfiguracja - Moduły aby ukończyć. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Błąd w masce wprowadzania ErrorBadMaskFailedToLocatePosOfSequence=Błąd, maska ​​bez kolejnego numeru ErrorBadMaskBadRazMonth=Błąd, zła wartość zresetowane @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=Hasło zostało ustawione dla tego użytkownika. Jednakże nie Konto użytkownika zostało utworzone. Więc to hasło jest przechowywane, ale nie mogą być używane do logowania do Dolibarr. Może być stosowany przez zewnętrzny moduł / interfejsu, ale jeśli nie trzeba definiować dowolną logowania ani hasła do członka, można wyłączyć opcję "Zarządzaj login dla każdego członka" od konfiguracji modułu użytkownika. Jeśli potrzebujesz zarządzać logowanie, ale nie wymagają hasła, możesz zachować to pole puste, aby uniknąć tego ostrzeżenia. Uwaga: E może być również stosowany jako login, jeśli element jest połączony do użytkownika. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/pl_PL/main.lang b/htdocs/langs/pl_PL/main.lang index 09a0383d899..80fa7e37072 100644 --- a/htdocs/langs/pl_PL/main.lang +++ b/htdocs/langs/pl_PL/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakt/adres dla tej części/zamówienia/ AddressesForCompany=Adressy dla części trzeciej ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Informacje o wydarzeniach dla tego uzytkownika ActionsOnProduct=Wydarzenia dotyczące tego produktu NActionsLate=%s późno @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link do umowy LinkToIntervention=Link do interwencji +LinkToTicket=Link to ticket CreateDraft=Utwórz Szic SetToDraft=Wróć do szkicu ClickToEdit=Kliknij by edytować diff --git a/htdocs/langs/pl_PL/products.lang b/htdocs/langs/pl_PL/products.lang index 10b9789e003..cd286f20b57 100644 --- a/htdocs/langs/pl_PL/products.lang +++ b/htdocs/langs/pl_PL/products.lang @@ -2,6 +2,7 @@ ProductRef=Nr ref. produktu ProductLabel=Etykieta produktu ProductLabelTranslated=Przetłumaczone na etykiecie produktu +ProductDescription=Product description ProductDescriptionTranslated=Przetłumczony opis produktu ProductNoteTranslated=Przetłumaczona nota produktu ProductServiceCard=Karta Produktu / Usługi diff --git a/htdocs/langs/pl_PL/stripe.lang b/htdocs/langs/pl_PL/stripe.lang index 2a6f68fef72..ecce980c764 100644 --- a/htdocs/langs/pl_PL/stripe.lang +++ b/htdocs/langs/pl_PL/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/pl_PL/withdrawals.lang b/htdocs/langs/pl_PL/withdrawals.lang index 0c20ba09a77..fa420bcd025 100644 --- a/htdocs/langs/pl_PL/withdrawals.lang +++ b/htdocs/langs/pl_PL/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Plik Wycofanie SetToStatusSent=Ustaw status "Plik Wysłane" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statystyki według stanu linii -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/pt_BR/accountancy.lang b/htdocs/langs/pt_BR/accountancy.lang index a72182b0755..4005c164e54 100644 --- a/htdocs/langs/pt_BR/accountancy.lang +++ b/htdocs/langs/pt_BR/accountancy.lang @@ -107,6 +107,7 @@ ACCOUNTING_RESULT_PROFIT=Conta de contabilidade de resultado (Lucro) ACCOUNTING_RESULT_LOSS=Conta contábil do resultado (perda) ACCOUNTING_CLOSURE_DEFAULT_JOURNAL=Jornal de encerramento ACCOUNTING_ACCOUNT_TRANSFER_CASH=Conta contábil da transferência bancária transitória +TransitionalAccount=Conta de transferência bancária transitória ACCOUNTING_ACCOUNT_SUSPENSE=Conta contábil de espera DONATION_ACCOUNTINGACCOUNT=Conta contábil para registro de doações. ADHERENT_SUBSCRIPTION_ACCOUNTINGACCOUNT=Conta contábil para registrar assinaturas @@ -191,7 +192,6 @@ ChartofaccountsId=ID do gráfico de contas InitAccountancy=Contabilidade Inicial InitAccountancyDesc=Esta página pode ser usado para inicializar um código de barras em objetos que não têm código de barras definidas. Verifique que o módulo de código de barras tenha sido instalado antes. DefaultBindingDesc=Esta página pode ser usada para definir a conta padrão a ser usada para conectar o registro das transações sobre o pagamento de salários, doações, taxas e o ICMS quando nenhuma conta da Contabilidade específica tiver sido definida. -DefaultClosureDesc=Esta página pode ser usada para definir parâmetros a serem usados para incluir um balanço. OptionModeProductSell=Modo vendas OptionModeProductSellIntra=Vendas de modo exportadas na CEE OptionModeProductSellExport=Vendas de modo exportadas em outros países @@ -206,7 +206,9 @@ PredefinedGroups=Grupos predefinidos WithoutValidAccount=Sem conta dedicada válida ValueNotIntoChartOfAccount=Este valor da conta contábil não existe no gráfico de conta AccountRemovedFromGroup=Conta removida do grupo +SaleExport=Venda de exportação Range=Faixa da conta da Contabilidade SomeMandatoryStepsOfSetupWereNotDone=Algumas etapas obrigatórias de configuração não foram feitas, preencha-as ErrorNoAccountingCategoryForThisCountry=Nenhum Plano de Contas Contábil disponível para este país %s (Veja Home - Configurações- Dicionário) ExportNotSupported=O formato de exportação definido não é suportado nesta página +DateExport=Data de exportação diff --git a/htdocs/langs/pt_BR/admin.lang b/htdocs/langs/pt_BR/admin.lang index 147b7dbabcc..15c007915cd 100644 --- a/htdocs/langs/pt_BR/admin.lang +++ b/htdocs/langs/pt_BR/admin.lang @@ -120,6 +120,7 @@ SystemToolsAreaDesc=Essa área dispõem de funções administrativas. Use esse m Purge=Purgar (apagar tudo) PurgeAreaDesc=Esta página permite deletar todos os arquivos gerados ou armazenados pelo Dolibarr (arquivos temporários ou todos os arquivos no diretório %s). Este recurso é fornecido como uma solução alternativa aos usuários cujo a instalação esteja hospedado num servidor que impeça o acesso as pastas onde os arquivos gerados pelo Dolibarr são armazenados, para excluí-los. PurgeDeleteLogFile=Excluir os arquivos de registro, incluindo o %s definido pelo módulo Syslog (não há risco de perda de dados) +PurgeDeleteTemporaryFiles=Exclua todos os arquivos temporários (sem risco de perder dados). Nota: A exclusão é feita apenas se o diretório temporário foi criado 24 horas atrás. PurgeDeleteTemporaryFilesShort=Excluir arquivos temporários PurgeDeleteAllFilesInDocumentsDir=Eliminar todos os arquivos do diretório %s. Isto irá excluir todos documentos (Terceiros, faturas, ...), arquivos carregados no módulo ECM, Backups e arquivos temporários PurgeRunNow=Purgar(Apagar) Agora @@ -356,6 +357,7 @@ RequiredBy=Este módulo é exigido por módulo(s) PageUrlForDefaultValues=Você deve inserir o caminho relativo do URL da página. Se você incluir parâmetros na URL, os valores padrão serão efetivos se todos os parâmetros estiverem definidos com o mesmo valor. PageUrlForDefaultValuesCreate=
Exemplo:
Para o formulário para criar um novo terceiro, é %s .
Para a URL dos módulos externos instalados no diretório personalizado, não inclua o "custom /", portanto, use o caminho como mymodule / mypage.php e não o custom / mymodule / mypage.php.
Se você quer o valor padrão somente se o url tiver algum parâmetro, você pode usar %s PageUrlForDefaultValuesList=
Exemplo:
Para a página que lista terceiros, é %s .
Para URL de módulos externos instalados no diretório customizado, não inclua o "custom", então use um caminho como mymodule / mypagelist.php e não custom / mymodule / mypagelist.php.
Se você quer o valor padrão somente se o url tiver algum parâmetro, você pode usar %s +AlsoDefaultValuesAreEffectiveForActionCreate=Observe que a sobrescrita de valores padrão para a criação de formulários funciona apenas para páginas que foram projetadas corretamente (portanto, com a ação do parâmetro = create or presend ...) EnableDefaultValues=Ativar personalização de valores padrão WarningSettingSortOrder=Atenção, a configuração de um ordenamento padrão par os pedidos pode resultar em um erro técnico quando indo para a página da lista, se o campo é um campo desconhecido. Se você se depara com tal erro, volte para esta página para remover o ordenamento padrão dos pedidos e restaure o comportamento padrão. ProductDocumentTemplates=Temas de documentos para a geração do documento do produto @@ -422,6 +424,7 @@ Module330Desc=Crie atalhos, sempre acessíveis, para as páginas internas ou ext Module410Desc=Integração do Webcalendar Module500Name=Impostos e Despesas Especiais Module520Desc=Gestão dos empréstimos +Module600Name=Notificações em evento de negócios Module600Desc=Enviar notificações de e-mail acionadas por um evento de negócios: por usuário (configuração definida para cada usuário), por contatos de terceiros (configuração definida em cada terceiro) ou por e-mails específicos Module600Long=Observe que este módulo envia e-mails em tempo real quando ocorre um evento de negócios específico. Se você estiver procurando por um recurso para enviar lembretes por e-mail para eventos da agenda, entre na configuração do módulo Agenda. Module610Name=Variáveis de produtos @@ -619,6 +622,7 @@ Permission401=Ler Descontos Permission402=Criar/Modificar Descontos Permission403=Validar Descontos Permission404=Excluir Descontos +Permission430=Use a barra de depuração Permission517=Salários de exportação Permission520=Leia Empréstimos Permission522=Criar / modificar empréstimos @@ -630,6 +634,9 @@ Permission532=Criar/Modificar Serviços Permission534=Excluir Serviços Permission536=Ver/gerenciar Serviços Ocultos Permission538=Exportar Serviços +Permission650=Leia as listas de materiais +Permission651=Criar / atualizar listas de materiais +Permission652=Excluir listas de materiais Permission701=Ler Doações Permission702=Criar/Modificar Doações Permission703=Excluir Doações @@ -649,6 +656,12 @@ Permission1101=Ler Pedidos de Entrega Permission1102=Criar/Modificar Pedidos de Entrega Permission1104=Validar Pedidos de Entrega Permission1109=Excluir Pedidos de Entrega +Permission1121=Leia propostas de fornecedores +Permission1122=Criar / modificar propostas de fornecedores +Permission1123=Validar propostas de fornecedores +Permission1124=Enviar propostas de fornecedores +Permission1125=Excluir propostas de fornecedores +Permission1126=Fechar solicitações de preços de fornecedores Permission1181=Ler Fornecedores Permission1182=Leia pedidos de compra Permission1183=Criar/modificar pedidos @@ -684,6 +697,11 @@ Permission2503=Submeter ou Deletar Documentos Permission2515=Configurar Diretórios dos Documentos Permission2801=Usar cliente FTP no modo leitura (somente navegador e baixar) Permission2802=Usar cliente FTP no modo escrita (deletar ou upload de arquivos) +Permission3200=Leia eventos arquivados e impressões digitais +Permission4001=Visualizar funcionários +Permission4002=Criar funcionários +Permission4003=Excluir funcionários +Permission4004=Exportar funcionários Permission20001=Leia pedidos de licença (sua licença e os de seus subordinados) Permission20002=Criar/modificar seus pedidos de licença (sua licença e os de seus subordinados) Permission20003=Excluir pedidos de licença @@ -916,8 +934,6 @@ SuhosinSessionEncrypt=Sessão armazenada criptografada pelo Suhosin ConditionIsCurrently=Condição é atualmente %s YouUseBestDriver=Você usa o driver %s, que é o melhor driver atualmente disponível. SearchOptim=Procurar Otimização -XDebugInstalled=XDebug é carregado. -XCacheInstalled=XCache é carregado. AddRefInList=Mostrar ref. Cliente / fornecedor lista de informações (lista de seleção ou caixa de combinação) e a maior parte do hiperlink.
Terceiros aparecerão com um formato de nome "CC12345 - SC45678 - Empresa X." em vez de "Empresa X.". AddAdressInList=Exibir lista de informações de endereço do cliente / fornecedor (lista de seleção ou caixa de combinação)
Terceiros aparecerão com um formato de nome de "Empresa X. - Rua tal, n°:21, sala: 123456, Cidade/Estado - Brasil" em vez de "Empresa X". FillThisOnlyIfRequired=Exemplo: +2 (Preencha somente se compensar o problema do timezone é experiente) @@ -1280,9 +1296,6 @@ ExpenseReportsRulesSetup=Configuração do módulo Relatórios de Despesas - Reg ExpenseReportNumberingModules=Módulo de numeração dos relatórios de despesas NoModueToManageStockIncrease=Nenhum módulo disponível foi ativado para gerenciar o aumento automático do estoque. O aumento do estoque será feito apenas de forma manual. YouMayFindNotificationsFeaturesIntoModuleNotification=Você pode encontrar opções para notificações por e-mail ativando e configurando o módulo "Notificação" -ListOfNotificationsPerUser=Lista de notificações por usuário* -ListOfNotificationsPerUserOrContact=Lista de notificações (eventos) disponíveis por usuário * ou por contato ** -ListOfFixedNotifications=Lista de Notificações Fixas GoOntoContactCardToAddMore=Ir para a aba "Notificações" de um terceiro para adicionar ou remover as notificações para contatos/endereços BackupDumpWizard=Assistente para criar o arquivo de backup SomethingMakeInstallFromWebNotPossible=A instalação do módulo externo não é possível a partir da interface web pelo seguinte motivo: @@ -1404,7 +1417,6 @@ LogsLinesNumber=Número de linhas para mostrar na guia logs UseDebugBar=Use a barra de depuração DEBUGBAR_LOGS_LINES_NUMBER=Número de últimas linhas de log para manter no console WarningValueHigherSlowsDramaticalyOutput=Atenção, valores mais altos reduzem drasticamente a saída -DebugBarModuleActivated=A barra de depuração do módulo é ativada e retarda dramaticamente a interface EXPORTS_SHARE_MODELS=Modelos de exportação são compartilhar com todos ExportSetup=Configuração do módulo Export InstanceUniqueID=ID exclusivo da instância @@ -1412,9 +1424,3 @@ SmallerThan=Menor que LargerThan=Maior que IfTrackingIDFoundEventWillBeLinked=Observe que, se um ID de rastreamento for encontrado no e-mail recebido, o evento será automaticamente vinculado aos objetos relacionados. WithGMailYouCanCreateADedicatedPassword=Com uma conta do GMail, se você ativou a validação de 2 etapas, é recomendável criar uma segunda senha dedicada para o aplicativo, em vez de usar sua própria senha da conta em https://myaccount.google.com/. -IFTTTSetup=Configuração do módulo IFTTT -IFTTT_SERVICE_KEY=Chave do serviço IFTTT -IFTTT_DOLIBARR_ENDPOINT_SECUREKEY=Chave de segurança para proteger o URL do terminal usado pelo IFTTT para enviar mensagens para o Dolibarr. -IFTTTDesc=Este módulo é projetado para acionar eventos no IFTTT e / ou executar alguma ação em gatilhos externos do IFTTT. -UrlForIFTTT=endpoint do URL para o IFTTT -YouWillFindItOnYourIFTTTAccount=Você vai encontrá-lo em sua conta IFTTT diff --git a/htdocs/langs/pt_BR/agenda.lang b/htdocs/langs/pt_BR/agenda.lang index cf795e7633e..0a4c932e1c9 100644 --- a/htdocs/langs/pt_BR/agenda.lang +++ b/htdocs/langs/pt_BR/agenda.lang @@ -1,6 +1,5 @@ # Dolibarr language file - Source file is en_US - agenda IdAgenda=ID do evento -TMenuAgenda=Agenda Eletrônica LocalAgenda=Calendário local ActionsOwnedBy=Evento de propriedade do ListOfActions=Lista de eventos diff --git a/htdocs/langs/pt_BR/banks.lang b/htdocs/langs/pt_BR/banks.lang index 5be7583130b..565c01edf16 100644 --- a/htdocs/langs/pt_BR/banks.lang +++ b/htdocs/langs/pt_BR/banks.lang @@ -1,5 +1,5 @@ # Dolibarr language file - Source file is en_US - banks -MenuBankCash=Banco | Dinheiro +MenuBankCash=Banco | Dinheiro - Financeiro BankAccounts=Contas bancárias BankAccountsAndGateways=Contas Bancárias | Gateways ShowAccount=Mostrar conta @@ -79,6 +79,7 @@ BankLineConciliated=Transação reconciliada Reconciled=Conciliada NotReconciled=Não conciliada SupplierInvoicePayment=Pagamento do fornecedores +WithdrawalPayment=Pedido com pagamento por débito SocialContributionPayment=Pagamento de contribuição social BankTransfers=Transferências bancárias TransferDesc=Transferência de uma conta para outra, o Dolibarr vai escrever dois registros (um débito na conta de origem e um crédito na conta de destino). A mesma quantia (exceto sinal), rótulo e data serão usados para esta transação) @@ -121,6 +122,10 @@ RejectCheckDate=Data que o cheque foi devolvido BankAccountModelModule=Temas de documentos para as contas bancárias. DocumentModelSepaMandate=Modelo de mandato SEPA. Uso somente em países da União Européia DocumentModelBan=Tema para imprimir a página com a informação BAN. +NewVariousPayment=Novo pagamento diverso +VariousPayment=Pagamento diverso +ShowVariousPayment=Mostrar pagamento diverso +AddVariousPayment=Adicionar pagamento diverso YourSEPAMandate=Seu mandato Área Única de Pagamentos em Euros AutoReportLastAccountStatement=Preencha automaticamente o campo 'número de extrato bancário' com o último número de extrato ao fazer a reconciliação CashControl=Caixa de dinheiro POS diff --git a/htdocs/langs/pt_BR/deliveries.lang b/htdocs/langs/pt_BR/deliveries.lang index 8a56722c9f9..3c8cb0c2cd8 100644 --- a/htdocs/langs/pt_BR/deliveries.lang +++ b/htdocs/langs/pt_BR/deliveries.lang @@ -1,6 +1,8 @@ # Dolibarr language file - Source file is en_US - deliveries +Delivery=Entrega DeliveryRef=Ref. entrega -DeliveryCard=Recibo de recebimento +DeliveryCard=Cartão de recibo +CreateDeliveryOrder=Gerar recebimento de entrega DeliveryStateSaved=Estado de entrega salvo SetDeliveryDate=Indicar a Data de Envio ValidateDeliveryReceipt=Confirmar a Nota de Entrega @@ -11,6 +13,7 @@ DeliveryMethod=Método de entrega TrackingNumber=Número de rastreamento StatusDeliveryValidated=Recebida GoodStatusDeclaration=Recebi a mercadorias acima em bom estado, +Deliverer=Entregador : Sender=Remetente ErrorStockIsNotEnough=Não existe estoque suficiente Shippable=Disponivel para envio diff --git a/htdocs/langs/pt_BR/errors.lang b/htdocs/langs/pt_BR/errors.lang index 8951fdcbded..55dde5f8a7c 100644 --- a/htdocs/langs/pt_BR/errors.lang +++ b/htdocs/langs/pt_BR/errors.lang @@ -72,7 +72,6 @@ ErrorSpecialCharNotAllowedForField=O campo "%s" não aceita caracteres especiais ErrorNumRefModel=Uma referência existe no banco de dados (% s) e não é compatível com esta regra de numeração. Remover registro ou referência renomeado para ativar este módulo. ErrorQtyTooLowForThisSupplier=Quantidade muito baixa para este fornecedor ou nenhum preço definido neste produto para este fornecedor ErrorOrdersNotCreatedQtyTooLow=Algumas encomendas não foram criadas por causa de quantidades muito baixas -ErrorModuleSetupNotComplete=A configuração do módulo parece estar incompleta. Vá para Início >> Configuração >> Módulos para completá-la. ErrorBadMaskFailedToLocatePosOfSequence=Erro, máscara sem número de sequência ErrorBadMaskBadRazMonth=Erro, valor de redefinição ruim ErrorMaxNumberReachForThisMask=Número máximo atingido para esta máscara diff --git a/htdocs/langs/pt_BR/paypal.lang b/htdocs/langs/pt_BR/paypal.lang index f9f857755a3..8f57a572bdb 100644 --- a/htdocs/langs/pt_BR/paypal.lang +++ b/htdocs/langs/pt_BR/paypal.lang @@ -26,3 +26,4 @@ ErrorSeverityCode=Erro grave de código PaypalLiveEnabled=Modo "ao vivo" do PayPal ativado (caso contrário, modo teste/sandbox) PostActionAfterPayment=Poste as ações após os pagamentos CardOwner=Titular do cartão +PayPalBalance=Crédito Paypal diff --git a/htdocs/langs/pt_BR/products.lang b/htdocs/langs/pt_BR/products.lang index 0ebc2916b18..b802c37f398 100644 --- a/htdocs/langs/pt_BR/products.lang +++ b/htdocs/langs/pt_BR/products.lang @@ -2,6 +2,7 @@ ProductRef=Ref. produto ProductLabel=Rótulo do produto ProductLabelTranslated=Etiqueta do produto traduzido +ProductDescription=Descrição do produto ProductDescriptionTranslated=Descrição do produto traduzido ProductNoteTranslated=Nota produto traduzido ProductServiceCard=Ficha do produto/serviço @@ -97,6 +98,7 @@ CustomerPrices=Preços de cliente SuppliersPrices=Preços de fornecedores SuppliersPricesOfProductsOrServices=Preços do fornecedor (produtos ou serviços) CountryOrigin=Pais de origem +Nature=Natureza do produto (matéria-prima/manufaturado) ShortLabel=Etiqueta curta set=conjunto se=conjunto @@ -152,6 +154,7 @@ MinSupplierPrice=Preco de compra minimo DynamicPriceConfiguration=Configuração de preço dinâmico DynamicPriceDesc=Voce pode definir uma fórmula matemática para calcular preços de clientes e fornecedores. Nessas fórmulas podem ser usadas todos as operações, contantes e variáveis. Voce pode definir aqui as variáveis que voce quer usar. Se a variável, deve ser automaticamente ajustada, voce pode definir uma URLl externa, que irá permitir o Dolibarr atualizar este valor automaticamente GlobalVariables=As variáveis ​​globais +GlobalVariableUpdaters=Atualizadores externos para variáveis GlobalVariableUpdaterHelp0=Analisa os dados JSON de URL especificada, valor especifica a localização de valor relevante, GlobalVariableUpdaterType1=Dados WebService GlobalVariableUpdaterHelp1=Analisa os dados WebService de URL especificada, NS especifica o namespace, valor especifica a localização de valor relevante, os dados devem conter os dados para enviar e método é o método chamando WS diff --git a/htdocs/langs/pt_BR/website.lang b/htdocs/langs/pt_BR/website.lang index 91b0123fe9f..d18fb52ff0b 100644 --- a/htdocs/langs/pt_BR/website.lang +++ b/htdocs/langs/pt_BR/website.lang @@ -62,3 +62,7 @@ NoWebSiteCreateOneFirst=Nenhum site foi criado ainda. Comece a criar o primeiro. GoTo=Ir para DynamicPHPCodeContainsAForbiddenInstruction=Você adiciona código PHP dinâmico que contém a instrução PHP %s que é proibida por padrão como conteúdo dinâmico (consulte as opções ocultas WEBSITE_PHP_ALLOW_xxx para aumentar a lista de comandos permitidos). NotAllowedToAddDynamicContent=Você não tem permissão para adicionar ou editar conteúdo em PHP dinâmico dos sites. Solicite a permissão ou apenas mantenha o código em tags do php não modificadas. +ReplaceWebsiteContent=Pesquisar ou substituir conteúdo do site +DeleteAlsoJs=Excluir todos os arquivos javascript específicos deste site?\n +DeleteAlsoMedias=Excluir todos os arquivos de mídia específicos deste site? +MyWebsitePages=Paginas do meu site diff --git a/htdocs/langs/pt_BR/withdrawals.lang b/htdocs/langs/pt_BR/withdrawals.lang index b7e6e587e31..9143c35872d 100644 --- a/htdocs/langs/pt_BR/withdrawals.lang +++ b/htdocs/langs/pt_BR/withdrawals.lang @@ -49,8 +49,6 @@ NumeroNationalEmetter=Nacional Número Transmissor BankToReceiveWithdraw=Conta bancária de recebimento CreditDate=A crédito WithdrawalFileNotCapable=Não foi possível gerar arquivos recibo retirada para o seu país %s (O seu país não é suportado) -ShowWithdraw=Mostrar Retire -IfInvoiceNeedOnWithdrawPaymentWontBeClosed=No entanto, se fatura não tem pelo menos um pagamento retirada ainda processado, não vai ser definido como pago para permitir a gestão de remoção prévia. DoStandingOrdersBeforePayments=Esta aba lhe permite solicitar um pagamento de pedido por Débito direto. Uma vez feito, vá ao menu Banco->Pedidos com Débito Direto para gerenciar o pagamento dos pedidos com Débito direto. Quando o pagamento do pedido estiver fechado, o pagamento da fatura será automaticamente registrado, e a fatura fechada se o alerta para pagamento é nulo. WithdrawalFile=Arquivo Retirada SetToStatusSent=Defina o status "arquivo enviado" @@ -63,6 +61,7 @@ WithdrawRequestAmount=Quantidade de pedido de débito direto: WithdrawRequestErrorNilAmount=Não foi possível criar solicitação de débito direto para quantidade vazia. PleaseReturnMandate=Favor devolver este formulário de mandato por e-mail para %s ou por correio para SEPALegalText=Pela assinatura deste formulário de mandato, você autoriza (A) %s a enviar instruções para o seu banco efetuar débito em sua conta e (B) que o seu banco efetue débito em sua conta de acordo com as instruções de %s. Como parte dos seus direitos, você tem direito ao reembolso do seu banco sob os termos e condições do acordo com ele firmado. O reembolso deve ser solicitado dentro de 8 semanas a partir da data em que a sua conta foi debitada. Os seus direitos relativos ao mandato acima são explicados em uma declaração que você pode obter junto a seu banco. +CreditorName=Nome do Credor SEPAFillForm=(B) Favor preencher todos os campos marcados com * SEPAFormYourName=Seu nome SEPAFormYourBAN=Nome da Conta do Seu Banco (IBAN) @@ -71,6 +70,10 @@ ModeRECUR=Pagamento recorrente PleaseCheckOne=Favor marcar apenas um DirectDebitOrderCreated=Pedido de débito direto %s criado CreateForSepa=Crie um arquivo de débito direto +ICS=Identificador do credor +END_TO_END=Tag SEPA XML "EndToEndId" - ID exclusivo atribuído por transação +USTRD=Tag SEPA XML "não estruturada" +ADDDAYS=Adicionar dias à data de execução InfoCreditSubject=Pagamento do pedido com pagamento por Débito direto %s pelo banco InfoCreditMessage=O pagamento do pedido por Débito direto %s foi feito pelo banco.
Dados do pagamento: %s InfoTransSubject=Transmissão do pedido com pagamento por Débito direto %s para o banco diff --git a/htdocs/langs/pt_PT/accountancy.lang b/htdocs/langs/pt_PT/accountancy.lang index 7e3445ffca9..cb399e5565a 100644 --- a/htdocs/langs/pt_PT/accountancy.lang +++ b/htdocs/langs/pt_PT/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Diários contabilisticos AccountingJournal=Diário contabilistico NewAccountingJournal=Novo diário contabilistico ShowAccoutingJournal=Mostrar diário contabilistico -Nature=Natureza +NatureOfJournal=Nature of Journal AccountingJournalType1=Operações diversas AccountingJournalType2=Vendas AccountingJournalType3=Compras @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Exportar CSV configurável Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=ID de plano de contas InitAccountancy=Iniciar contabilidade InitAccountancyDesc=Essa página pode ser usada para inicializar uma conta contábil em produtos e serviços que não tenham uma conta contábil definida para vendas e compras. DefaultBindingDesc=Esta página pode ser usada para definir uma conta padrão a ser usada para vincular registo de transações sobre salários, doações, impostos e IVA quando nenhuma conta contabilística específica estiver definida. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Opções OptionModeProductSell=Modo de vendas OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/pt_PT/admin.lang b/htdocs/langs/pt_PT/admin.lang index dec7048306a..9fb236effd4 100644 --- a/htdocs/langs/pt_PT/admin.lang +++ b/htdocs/langs/pt_PT/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salários Module510Desc=Registrar e acompanhar pagamentos de funcionários Module520Name=Empréstimos Module520Desc=Gestão de empréstimos -Module600Name=Notificações +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Variantes de produtos @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Atributos complementares (encomendas) ExtraFieldsSupplierInvoices=Atributos complementares (faturas) ExtraFieldsProject=Atributos complementares (projetos) ExtraFieldsProjectTask=Atributos complementares (tarefas) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=O atributo %s tem um valor errado. AlphaNumOnlyLowerCharsAndNoSpace=somente caracteres alfanuméricos e minúsculas, sem espaço SendmailOptionNotComplete=Aviso, em alguns sistemas Linux, para enviar emails, a configuração sendmail deve conter a opção -ba (o parâmetro mail.force_extra_parameters no seu ficheiro php.ini). Se alguns destinatários não receberem e-mails, tente editar este parâmetro PHP com mail.force_extra_parameters = -ba @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Sessão de armazenamento encriptada por Suhosin ConditionIsCurrently=A condição está atualmente %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=Você usa o driver %s, mas o driver %s é recomendado. -NbOfProductIsLowerThanNoPb=Você tem apenas produtos / serviços %s no banco de dados. Isso não requer nenhuma otimização específica. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Optimização da pesquisa -YouHaveXProductUseSearchOptim=Você tem produtos %s no banco de dados. Você deve adicionar a constante PRODUCT_DONOTSEARCH_ANYWHERE a 1 em Home-Setup-Other. Limite a pesquisa ao início de strings, o que possibilita que o banco de dados use índices e você deve obter uma resposta imediata. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Você está usando o navegador da web %s. Este navegador está ok para segurança e desempenho. BrowserIsKO=Você está usando o navegador da web %s. Este navegador é conhecido por ser uma má escolha para segurança, desempenho e confiabilidade. Recomendamos o uso do Firefox, Chrome, Opera ou Safari. -XDebugInstalled=XDebug está carregado. -XCacheInstalled=XCache está carregada. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Peça o método de envio preferido para terceiros. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Configuração do módulo Relatórios de despesas - Reg ExpenseReportNumberingModules=Módulo de numeração de relatórios de despesas NoModueToManageStockIncrease=Não foi ativado nenhum módulo capaz de efetuar a gestão automática do acréscimo de stock. O acrescimo de stock será efetuado manualmente. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=Lista de notificações por utilizador* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Vá até a guia "Notificações" de um usuário para adicionar ou remover notificações para usuários GoOntoContactCardToAddMore=Vá ao separador "Notificações" de um terceiro para adicionar ou remover as notificações de contactos/endereços Threshold=Limite @@ -1898,6 +1900,11 @@ OnMobileOnly=Apenas na tela pequena (smartphone) DisableProspectCustomerType=Desativar o tipo de terceiro "cliente + cliente" (assim, o terceiro deve ser cliente ou cliente, mas não pode ser ambos) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/pt_PT/bills.lang b/htdocs/langs/pt_PT/bills.lang index cc737fc2d1d..695ec103e84 100644 --- a/htdocs/langs/pt_PT/bills.lang +++ b/htdocs/langs/pt_PT/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Pagamento superior ao valor a pagar HelpPaymentHigherThanReminderToPay=Atenção, o valor do pagamento de uma ou mais contas é maior do que o valor pendente a pagar.
Edite sua entrada, caso contrário, confirme e considere a criação de uma nota de crédito para o excesso recebido para cada fatura paga em excesso. HelpPaymentHigherThanReminderToPaySupplier=Atenção, o valor do pagamento de uma ou mais contas é maior do que o valor pendente a pagar.
Edite sua entrada, caso contrário, confirme e considere a criação de uma nota de crédito para o excesso pago por cada fatura paga em excesso. ClassifyPaid=Classificar como 'Pago' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classificar como 'Pago Parcialmente' ClassifyCanceled=Classificar como 'Abandonado' ClassifyClosed=Classificar como 'Fechado' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Ver fatura retificativa ShowInvoiceAvoir=Ver deposito ShowInvoiceDeposit=Mostrar fatura de adiantamento ShowInvoiceSituation=Mostrar fatura da situação +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Mostrar pagamento AlreadyPaid=Já e AlreadyPaidBack=Já reembolsado diff --git a/htdocs/langs/pt_PT/errors.lang b/htdocs/langs/pt_PT/errors.lang index 16ff4e1572f..886d1ba6642 100644 --- a/htdocs/langs/pt_PT/errors.lang +++ b/htdocs/langs/pt_PT/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Os caracteres especiais não são permitidos ErrorNumRefModel=Existe uma referência em banco de dados (%s) e não é compatível com esta regra de numeração. Remover registro ou renomeado de referência para ativar este módulo. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=A configuração do módulo parece incompleta. Vá em Home - Setup - Módulos para completar. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Erro na máscara ErrorBadMaskFailedToLocatePosOfSequence=Máscara de erro, sem número de seqüência ErrorBadMaskBadRazMonth=Erro, o valor de reset ruim @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=Uma senha foi definida para este membro. No entanto, nenhuma conta de usuário foi criada. Portanto, essa senha é armazenada, mas não pode ser usada para fazer login no Dolibarr. Pode ser usado por um módulo externo / interface, mas se você não precisa definir nenhum login nem senha para um membro, você pode desativar a opção "Gerenciar um login para cada membro" da configuração do módulo de membro. Se você precisar gerenciar um login, mas não precisar de nenhuma senha, poderá manter esse campo vazio para evitar esse aviso. Nota: O email também pode ser usado como um login se o membro estiver vinculado a um usuário. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/pt_PT/main.lang b/htdocs/langs/pt_PT/main.lang index 1c175a3c7b2..2ff9c3ef136 100644 --- a/htdocs/langs/pt_PT/main.lang +++ b/htdocs/langs/pt_PT/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contactos/moradas para este terceiro AddressesForCompany=Moradas para este terceiro ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Eventos sobre este membro ActionsOnProduct=Eventos sobre este produto NActionsLate=%s em atraso @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Associar a contrato LinkToIntervention=Associar a intervenção +LinkToTicket=Link to ticket CreateDraft=Criar Rascunho SetToDraft=Voltar para o rascunho ClickToEdit=Clique para editar diff --git a/htdocs/langs/pt_PT/products.lang b/htdocs/langs/pt_PT/products.lang index 14b1b68ad0a..947a4f4d624 100644 --- a/htdocs/langs/pt_PT/products.lang +++ b/htdocs/langs/pt_PT/products.lang @@ -2,6 +2,7 @@ ProductRef=Ref. do produto ProductLabel=Etiqueta do produto ProductLabelTranslated=Etiqueta do produto traduzida +ProductDescription=Product description ProductDescriptionTranslated=Categoria do produto traduzida ProductNoteTranslated=Nota do produto traduzida ProductServiceCard=Ficha de produto/serviço diff --git a/htdocs/langs/pt_PT/stripe.lang b/htdocs/langs/pt_PT/stripe.lang index 4b3edb96134..66bf8590edb 100644 --- a/htdocs/langs/pt_PT/stripe.lang +++ b/htdocs/langs/pt_PT/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/pt_PT/withdrawals.lang b/htdocs/langs/pt_PT/withdrawals.lang index 36049ddec43..7a63c003b00 100644 --- a/htdocs/langs/pt_PT/withdrawals.lang +++ b/htdocs/langs/pt_PT/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=arquivo retirado SetToStatusSent=Definir o estado como "Ficheiro Enviado" ThisWillAlsoAddPaymentOnInvoice=Isso também registrará os pagamentos para as faturas e os classificará como "Pago" se o restante a pagar for nulo StatisticsByLineStatus=Estatísticas por status de linhas -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Referência de mandato exclusivo RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Modo de débito direto (FRST ou RECUR) diff --git a/htdocs/langs/ro_RO/accountancy.lang b/htdocs/langs/ro_RO/accountancy.lang index 472c02c9452..966e5a7a9e8 100644 --- a/htdocs/langs/ro_RO/accountancy.lang +++ b/htdocs/langs/ro_RO/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Jurnalele contabile AccountingJournal=Jurnalul contabil NewAccountingJournal=Jurnal contabil nou ShowAccoutingJournal=Arătați jurnalul contabil -Nature=Personalitate juridică +NatureOfJournal=Nature of Journal AccountingJournalType1=Operațiuni diverse AccountingJournalType2=Vânzări AccountingJournalType3=Achiziţii @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export pentru Quadratus QuadraCompta Modelcsv_ebp=Export pentru EBP Modelcsv_cogilog=Export pentru Cogilog Modelcsv_agiris=Export pentru Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Exportați CSV configurabil Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Id-ul listei de conturi InitAccountancy=Init contabilitate InitAccountancyDesc=Această pagină poate fi utilizată pentru a inițializa un cont contabil pentru produse și servicii care nu au cont contabil definit pentru vânzări și achiziții. DefaultBindingDesc=Această pagină poate fi utilizată pentru a seta un cont implicit care să fie folosit pentru a lega înregistrarea tranzacțiilor cu privire la salariile de plată, donațiile, impozitele și taxe atunci când nu a fost deja stabilit niciun cont contabil. -DefaultClosureDesc=Această pagină poate fi utilizată pentru a seta parametrii care trebuie utilizați pentru a închide un bilanț. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Opţiuni OptionModeProductSell=Mod vanzari OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/ro_RO/admin.lang b/htdocs/langs/ro_RO/admin.lang index 8f9e5dc09fd..ca53c0a762f 100644 --- a/htdocs/langs/ro_RO/admin.lang +++ b/htdocs/langs/ro_RO/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salarii Module510Desc=Înregistrați și urmăriți plățile angajaților Module520Name=Credite Module520Desc=Gestionarea creditelor -Module600Name=Notificări +Module600Name=Notifications on business event Module600Desc=Trimiteți notificări prin e-mail declanșate de un eveniment de afaceri: pentru fiecare utilizator (setarea definită pentru fiecare utilizator), pentru contacte terțe (setare definită pentru fiecare terț) sau pentru e-mailuri specifice Module600Long=Rețineți că acest modul trimite e-mailuri în timp real când apare un anumit eveniment de afaceri. Dacă sunteți în căutarea unei funcții pentru a trimite memento-uri de e-mail pentru evenimente de agendă, mergeți la configurarea agendei modulului. Module610Name=Variante de produs @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Atribute complementare (comenzi) ExtraFieldsSupplierInvoices=Atribute complementare (facturi) ExtraFieldsProject=Atribute complementare (proiecte) ExtraFieldsProjectTask=Atribute complementare (sarcini) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Atributul %s are o valoare greşită. AlphaNumOnlyLowerCharsAndNoSpace=numai caractere minuscule, alfanumerice fără spaţiu SendmailOptionNotComplete=Atenţie, pe unele sisteme Linux, pentru a trimite e-mail de la e-mail, sendmail configurare execuţie trebuie să conatins optiunea-ba (mail.force_extra_parameters parametri în fişierul php.ini). Dacă nu unor destinatari a primi e-mailuri, încercaţi să editaţi acest parametru PHP cu mail.force_extra_parameters =-BA). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Stocarea sesiune criptată prin Suhosin ConditionIsCurrently=Condiția este momentan %s YouUseBestDriver=Utilizați driverul %s, care este cel mai bun driver disponibil în prezent. YouDoNotUseBestDriver=Utilizați driverul %s dar driverul %s este recomandat. -NbOfProductIsLowerThanNoPb=Aveți numai %s produse/servicii în fișierul bazei de date. Acest lucru nu necesită o optimizare particulară. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Optimizare căutare -YouHaveXProductUseSearchOptim=Aveți %s produse în fișierul bazei de date. Trebuie să adăugați constanta PRODUCT_DONOTSEARCH_ANYWHERE la 1 înAcasă-Gestionare-Altele. Limitați căutarea la începutul șirurilor, ceea ce face posibil ca baza de date să utilizeze indexari si ar trebui să primiți un răspuns imediat. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Utilizați browserul web %s. Acest browser este ok pentru securitate și performanţă. BrowserIsKO=Utilizați browserul web %s. Acest browser este cunoscut ca fiind o alegere proastă pentru securitate, fiabilitate și performanță. Vă recomandăm să utilizați Firefox, Chrome, Opera sau Safari. -XDebugInstalled=XDebug este încărcat. -XCacheInstalled=XCache este încărcată. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Afișați Lista de informatii a clientului/Furnizorului (selectați lista sau combobox) și cea mai mare parte a hiperlinkului.
Terții vor apărea cu un format de nume "CC12345 - SC45678 - The Big Company corp". în loc de "The Big Company corp". AddAdressInList=Afișați Lista de informatii a clientului/Furnizorului (selectați lista sau combobox).
Terții i vor apărea cu numele format din "Big Company corp - 21 jump street 123456 Big city - USA" în loc de "Big Company corp". AskForPreferredShippingMethod=Solicitați o metodă de transport preferată pentru terți. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Configurare din module Rapoarte de cheltuieli - Reguli ExpenseReportNumberingModules=Modul de numerotare a rapoartelor de cheltuieli NoModueToManageStockIncrease=Nu a fost activat niciun modul capabil să gestioneze creșterea stocului automat. Creșterea stocurilor se va face doar prin introducere manuală. YouMayFindNotificationsFeaturesIntoModuleNotification=Puteți găsi opțiuni pentru notificările prin e-mail prin activarea și configurarea modulului "Notificare". -ListOfNotificationsPerUser=Listă de notificări pe utilizator * -ListOfNotificationsPerUserOrContact=Listă de notificări (evenimente) disponibilă pe utilizator* sau pe contact ** -ListOfFixedNotifications=Listă de notificări fixe +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Accesați fila "Notificări" a unui mesaj de utilizator pentru a adăuga sau elimina notificările pentru utilizatori GoOntoContactCardToAddMore=Mergeți în fila "Notificări" a unei terțe părți pentru a adăuga sau elimina notificări pentru contacte / adrese Threshold=Prag @@ -1898,6 +1900,11 @@ OnMobileOnly=Numai pe ecranul mic (smartphone) DisableProspectCustomerType=Dezactivați tipul de terţ "Prospect + Client" (deci terţul trebuie să fie Prospect sau Client, dar nu poate fi ambele) MAIN_OPTIMIZEFORTEXTBROWSER=Simplificați interfața pentru o persoană nevăzătoare MAIN_OPTIMIZEFORTEXTBROWSERDesc=Activați această opțiune dacă sunteți o persoană nevăzătoare sau dacă utilizați aplicația dintr-un browser de text precum Lynx sau Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Această valoare poate fi suprascrisă de fiecare utilizator de pe pagina sa de utilizator- tab '%s' DefaultCustomerType=Tipul terțului implicit pentru formularul de creare "Client nou" ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/ro_RO/bills.lang b/htdocs/langs/ro_RO/bills.lang index 61886b2fa25..e6e0abe033e 100644 --- a/htdocs/langs/ro_RO/bills.lang +++ b/htdocs/langs/ro_RO/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Plată mai mare decât restul de plată HelpPaymentHigherThanReminderToPay=Atenție, suma de plată a uneia sau mai multor facturi este mai mare decât suma rămasă neachitată.
Modificați intrarea dvs., în caz contrar confirmați şi luați în considerare crearea unei note de credit pentru suma în exces primită pentru fiecare sumă primită în plus. HelpPaymentHigherThanReminderToPaySupplier=Atenție, suma de plată a uneia sau mai multor facturi este mai mare decât suma rămasă neachitată.
Modificați intrarea dvs., în caz contrar confirmați şi luați în considerare crearea unei note de credit pentru suma în exces primită pentru fiecare sumă plătită în plus. ClassifyPaid=Clasează "Platită" +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Clasează "Platită Parţial" ClassifyCanceled=Clasează "Abandonată" ClassifyClosed=Clasează "Închisă" @@ -214,6 +215,20 @@ ShowInvoiceReplace=Afisează factura de înlocuire ShowInvoiceAvoir=Afisează nota de credit ShowInvoiceDeposit=Afișați factura în avans ShowInvoiceSituation=Afişează factura de situaţie +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Afisează plata AlreadyPaid=Deja platite AlreadyPaidBack=Deja rambursată diff --git a/htdocs/langs/ro_RO/errors.lang b/htdocs/langs/ro_RO/errors.lang index 79f0d4f6f50..3402e4a690e 100644 --- a/htdocs/langs/ro_RO/errors.lang +++ b/htdocs/langs/ro_RO/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Caractere speciale nu sunt permise pentru dom ErrorNumRefModel=O referire există în baza de date (%s) şi nu este compatibilă cu această regulă de numerotare. înregistra Remove sau redenumite de referinţă pentru a activa acest modul. ErrorQtyTooLowForThisSupplier=Cantitate prea mică pentru acest furnizor sau niciun preț definit pentru acest produs pentru acest furnizor ErrorOrdersNotCreatedQtyTooLow=Unele comenzi nu au fost create datorită cantităților prea mici -ErrorModuleSetupNotComplete=Configurarea modulului pare a nu fi completă. Mergeți la Setup - Module pentru a finaliza. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Eroare pe masca ErrorBadMaskFailedToLocatePosOfSequence=Eroare, fără a masca numărul de ordine ErrorBadMaskBadRazMonth=Eroare, Bad resetare valoarea @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL-ul %s trebuie să înceapă cu http:// sau https:/ ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount= O parolă a fost trimisă către acest membru. Cu toate acestea, nu a fost creat nici un cont de utilizator. Astfel, această parolă este stocată, dar nu poate fi utilizată pentru autentificare. Poate fi utilizată de către un modul / interfată externă, dar dacă nu aveți nevoie să definiți un utilizator sau o parolă pentru un membru, puteți dezactiva opțiunea "Gestionați o conectare pentru fiecare membru" din modul de configurare membri. În cazul în care aveți nevoie să gestionați un utilizator, dar nu este nevoie de parolă, aveți posibilitatea să păstrați acest câmp gol pentru a evita acest avertisment. Notă: Adresa de e-mail poate fi utilizată ca utilizator la autentificare, în cazul în care membrul este legat de un utilizator. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/ro_RO/main.lang b/htdocs/langs/ro_RO/main.lang index fa6ed942ed0..e5d109c0da2 100644 --- a/htdocs/langs/ro_RO/main.lang +++ b/htdocs/langs/ro_RO/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacte pentru aceast terţ AddressesForCompany=Adrese pentru acest terţ ActionsOnCompany=Evenimente pentru acest terț ActionsOnContact=Evenimente pentru acest contact/adresa +ActionsOnContract=Events for this contract ActionsOnMember=Evenimente privind acest membru ActionsOnProduct=Evenimente despre acest produs NActionsLate=%s întârziat @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link la propunerea vânzătorului LinkToSupplierInvoice=Link la factura furnizorului LinkToContract=Link la contract LinkToIntervention=Link la intervenție +LinkToTicket=Link to ticket CreateDraft=Creareză schiţă SetToDraft=Inapoi la schiţă ClickToEdit=Clic pentru a edita diff --git a/htdocs/langs/ro_RO/products.lang b/htdocs/langs/ro_RO/products.lang index 2d55290f69f..e9a675f3d4d 100644 --- a/htdocs/langs/ro_RO/products.lang +++ b/htdocs/langs/ro_RO/products.lang @@ -2,6 +2,7 @@ ProductRef=Ref. Produs ProductLabel=Etichetă produs ProductLabelTranslated=Etichetă de produs tradusă +ProductDescription=Product description ProductDescriptionTranslated=Descrierea produsului tradus ProductNoteTranslated=Nota de produs tradusă ProductServiceCard=Fişe Produse / Servicii diff --git a/htdocs/langs/ro_RO/stripe.lang b/htdocs/langs/ro_RO/stripe.lang index 92ff044dd88..fc47415eb0d 100644 --- a/htdocs/langs/ro_RO/stripe.lang +++ b/htdocs/langs/ro_RO/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=Cont utilizator pe care să îl utilizați pentru no StripePayoutList=Listă de plăți Stripe ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/ro_RO/withdrawals.lang b/htdocs/langs/ro_RO/withdrawals.lang index 8468953f95a..36d33342746 100644 --- a/htdocs/langs/ro_RO/withdrawals.lang +++ b/htdocs/langs/ro_RO/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Fişier Retragere SetToStatusSent=Setează statusul "Fişier Trimis" ThisWillAlsoAddPaymentOnInvoice=Acest lucru va înregistra, de asemenea, plățile către facturi și le va clasifica drept "plătit" dacă restul de plată este nul StatisticsByLineStatus=Statistici după starea liniilor -RUM=RMU +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Referință de mandat unic RUMWillBeGenerated=Dacă este gol, se va genera un RMU (referință unică de mandat) odată ce informațiile despre contul bancar vor fi salvate. WithdrawMode=Modul debit direct (FRST sau RECUR) diff --git a/htdocs/langs/ru_RU/accountancy.lang b/htdocs/langs/ru_RU/accountancy.lang index 99e4fefd472..3d4e4b2b76a 100644 --- a/htdocs/langs/ru_RU/accountancy.lang +++ b/htdocs/langs/ru_RU/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Бухгалтерские журналы AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Природа +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Продажи AccountingJournalType3=Покупки @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/ru_RU/admin.lang b/htdocs/langs/ru_RU/admin.lang index 08836e9e900..1b274768ca4 100644 --- a/htdocs/langs/ru_RU/admin.lang +++ b/htdocs/langs/ru_RU/admin.lang @@ -574,7 +574,7 @@ Module510Name=Зарплаты Module510Desc=Записывать и отслеживать выплаты сотрудникам Module520Name=Ссуды Module520Desc=Управление ссудами -Module600Name=Уведомления +Module600Name=Notifications on business event Module600Desc=Отправка уведомлений по электронной почте, инициированных бизнес-событием: для каждого пользователя (настройка, определенная для каждого пользователя), для сторонних контактов (настройка, определенная для каждого контрагента) или для определенных электронных писем Module600Long=Обратите внимание, что этот модуль отправляет электронные письма в режиме реального времени, когда происходит определенное деловое событие. Если вы ищете функцию для отправки напоминаний по электронной почте для событий в повестке дня, перейдите к настройке модуля Agenda. Module610Name=Варианты продукта @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Дополнительные атрибуты (Зак ExtraFieldsSupplierInvoices=Дополнительные атрибуты (Счета-фактуры) ExtraFieldsProject=Дополнительные атрибуты (Проекты) ExtraFieldsProjectTask=Дополнительные атрибуты (Задачи) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Атрибут %s имеет неправильное значение. AlphaNumOnlyLowerCharsAndNoSpace=только латинские строчные буквы и цифры без пробелов SendmailOptionNotComplete=Предупреждение, на некоторых системах Linux, для отправки электронной почты из электронной почты, Sendmail выполнения установки должны conatins опцию-ба (параметр mail.force_extra_parameters в файле php.ini). Если некоторые получатели не получают электронные письма, попытке изменить этот параметр с PHP mail.force_extra_parameters =-ба). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Хранилище сессий шифровано сис ConditionIsCurrently=Текущее состояние %s YouUseBestDriver=Вы используете драйвер %s, который является лучшим драйвером, доступным в настоящее время. YouDoNotUseBestDriver=Вы используете драйвер %s, но рекомендуется драйвер %s. -NbOfProductIsLowerThanNoPb=У вас есть только %s товаров/услуг в базе данных. Это не требуебует никакой оптимизации. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Поисковая оптимизация -YouHaveXProductUseSearchOptim=У вас есть продукты %s в базе данных. Вы должны добавить константу PRODUCT_DONOTSEARCH_ANYWHERE равную 1 в Главная-Настройки-Другие настройки. Ограничьте поиск началом строк, что позволяет базе данных использовать индексы, и вы будете получать быстрый ответ. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Вы используете веб-браузер %s. Этот браузер подходит в отношении безопасности и производительности. BrowserIsKO=Вы используете веб-браузер %s. Этот браузер, как известно, является плохим выбором по безопасности, производительности и надежности. Мы рекомендуем использовать Firefox, Chrome, Opera или Safari. -XDebugInstalled=XDebug загружен. -XCacheInstalled=XCache загружен. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Запросить предпочтительный способ доставки для контрагентов. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Настройка модуля Отчеты о рас ExpenseReportNumberingModules=Модуль нумерации отчетов о расходах NoModueToManageStockIncrease=Был активирован модуль, способный управлять автоматическим увеличением запасов. Увеличение запасов будет производиться только вручную. YouMayFindNotificationsFeaturesIntoModuleNotification=Вы можете найти опции для уведомлений по электронной почте, включив и настроив модуль «Уведомления». -ListOfNotificationsPerUser=Список уведомлений на пользователя * -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Перейдите на вкладку «Уведомления» третьей стороны, чтобы добавлять или удалять уведомления для контактов/адресов Threshold=Порог @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Примечание. Банковский счет должен быть указан в модуле каждого способа оплаты (Paypal, Stripe, ...), чтобы эта функция работала. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Модуль отладки активируется и резко замедляет интерфейс +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/ru_RU/bills.lang b/htdocs/langs/ru_RU/bills.lang index eedacc9143d..4d64e6aa83d 100644 --- a/htdocs/langs/ru_RU/bills.lang +++ b/htdocs/langs/ru_RU/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Платеж больше, чем в напоми HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Классифицировать как 'Оплачен' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Классифицировать как 'Оплачен частично' ClassifyCanceled=Классифицировать как 'Аннулирован' ClassifyClosed=Классифицировать как 'Закрыт' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Показать заменяющий счет-фактуру ShowInvoiceAvoir=Показать кредитое авизо ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Показать платеж AlreadyPaid=Уже оплачен AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/ru_RU/errors.lang b/htdocs/langs/ru_RU/errors.lang index b8e12a8f6bc..ef954ee19b7 100644 --- a/htdocs/langs/ru_RU/errors.lang +++ b/htdocs/langs/ru_RU/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Специальные символы не д ErrorNumRefModel=Ссылка есть в базе данных (%s) и не совместимы с данным правилом нумерации. Удаление записей или переименован ссылкой для активации этого модуля. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Ошибка на маску ErrorBadMaskFailedToLocatePosOfSequence=Ошибка, маска без порядкового номера ErrorBadMaskBadRazMonth=Ошибка, плохое значение сброса @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/ru_RU/main.lang b/htdocs/langs/ru_RU/main.lang index 16888bfd4c2..4bea2a8d3e2 100644 --- a/htdocs/langs/ru_RU/main.lang +++ b/htdocs/langs/ru_RU/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Контакты/Адреса для этого ко AddressesForCompany=Адреса для этого контарагента ActionsOnCompany=События для этого контрагента ActionsOnContact=Событие для этого контакта/адреса +ActionsOnContract=Events for this contract ActionsOnMember=События этого участника ActionsOnProduct=События об этом продукте NActionsLate=% с опозданием @@ -759,6 +760,7 @@ LinkToSupplierProposal=Ссылка на предложение поставщи LinkToSupplierInvoice=Ссылка на счет поставщика LinkToContract=Ссылка на контакт LinkToIntervention=Ссылка на мероприятие +LinkToTicket=Link to ticket CreateDraft=Создать черновик SetToDraft=Назад к черновику ClickToEdit=Нажмите, чтобы изменить diff --git a/htdocs/langs/ru_RU/products.lang b/htdocs/langs/ru_RU/products.lang index 31e9c9901e9..41e45aee3f0 100644 --- a/htdocs/langs/ru_RU/products.lang +++ b/htdocs/langs/ru_RU/products.lang @@ -2,6 +2,7 @@ ProductRef=Продукт исх. ProductLabel=Этикетка товара ProductLabelTranslated=Переведенная этикетка продукта +ProductDescription=Product description ProductDescriptionTranslated=Переведенное описание продукта ProductNoteTranslated=Переведенная заметка о продукте ProductServiceCard=Карточка Товаров/Услуг diff --git a/htdocs/langs/ru_RU/stripe.lang b/htdocs/langs/ru_RU/stripe.lang index 10b6c4748d1..196cfdc10ae 100644 --- a/htdocs/langs/ru_RU/stripe.lang +++ b/htdocs/langs/ru_RU/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/ru_RU/withdrawals.lang b/htdocs/langs/ru_RU/withdrawals.lang index 661e530d09a..3dcaf52751d 100644 --- a/htdocs/langs/ru_RU/withdrawals.lang +++ b/htdocs/langs/ru_RU/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Файл изъятия средств SetToStatusSent=Установить статус "Файл отправлен" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Статистика статуса по строкам -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/sk_SK/accountancy.lang b/htdocs/langs/sk_SK/accountancy.lang index ec2439d5d71..5f922e5911c 100644 --- a/htdocs/langs/sk_SK/accountancy.lang +++ b/htdocs/langs/sk_SK/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Príroda +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Predaje AccountingJournalType3=Platby @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Načítať účtovníctvo InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=Táto stránka môže byť použitá na nastavenie predvoleného účtu, ktorý sa používa na prepojenie transakčných záznamov o platobných platoch, darcovstve, daniach a DPH, ak už nie je stanovený žiadny konkrétny účtovný účet. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Možnosti OptionModeProductSell=Mód predaja OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/sk_SK/admin.lang b/htdocs/langs/sk_SK/admin.lang index a4156dc9f84..4546efba5d7 100644 --- a/htdocs/langs/sk_SK/admin.lang +++ b/htdocs/langs/sk_SK/admin.lang @@ -574,7 +574,7 @@ Module510Name=Mzdy Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Správca pôžičiek -Module600Name=Upozornenie +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Doplnkové atribúty (objednávky) ExtraFieldsSupplierInvoices=Doplnkové atribúty (faktúry) ExtraFieldsProject=Doplnkové atribúty (projekty) ExtraFieldsProjectTask=Doplnkové atribúty (úlohy) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Atribút %s má nesprávnu hodnotu. AlphaNumOnlyLowerCharsAndNoSpace=iba alfanumerické a malé znaky bez medzier SendmailOptionNotComplete=Upozornenie na niektorých operačných systémoch Linux, posielať e-maily z vášho e-mailu, musíte sendmail prevedenie inštalácie obsahuje voľbu-BA (parameter mail.force_extra_parameters do súboru php.ini). Ak niektorí príjemcovia nikdy prijímať e-maily, skúste upraviť tento parameter spoločne s PHP mail.force_extra_parameters =-BA). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Úložisko relácie šifrovaná Suhosin ConditionIsCurrently=Podmienkou je v súčasnej dobe %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Optimalizácia pre vyhľadávače -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug je načítaný -XCacheInstalled=XCache načítaný. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=Zoznam upozornení podľa užívateľa -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Maximálna hodnota @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/sk_SK/bills.lang b/htdocs/langs/sk_SK/bills.lang index e59e132e721..867afacd391 100644 --- a/htdocs/langs/sk_SK/bills.lang +++ b/htdocs/langs/sk_SK/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Platobné vyššia než upomienke na zaplatenie HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Klasifikáciu "Zaplatené" +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Klasifikovať "Platené čiastočne" ClassifyCanceled=Klasifikovať "Opustené" ClassifyClosed=Klasifikáciu "uzavretým" @@ -214,6 +215,20 @@ ShowInvoiceReplace=Zobraziť výmene faktúru ShowInvoiceAvoir=Zobraziť dobropis ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Zobraziť platbu AlreadyPaid=Už zaplatené AlreadyPaidBack=Už vráti diff --git a/htdocs/langs/sk_SK/errors.lang b/htdocs/langs/sk_SK/errors.lang index 6c0c9221b52..5f0b4926d2e 100644 --- a/htdocs/langs/sk_SK/errors.lang +++ b/htdocs/langs/sk_SK/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Špeciálne znaky nie sú povolené pre pole ErrorNumRefModel=Existuje odkaz do databázy (%s) a nie je kompatibilný s týmto pravidlom číslovania. Odobrať záznam alebo premenovať odkaz na aktiváciu tohto modulu. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Chyba na masku ErrorBadMaskFailedToLocatePosOfSequence=Chyba maska ​​bez poradovým číslom ErrorBadMaskBadRazMonth=Chyba, zlá hodnota po resete @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/sk_SK/main.lang b/htdocs/langs/sk_SK/main.lang index 52f6af95054..ef836241865 100644 --- a/htdocs/langs/sk_SK/main.lang +++ b/htdocs/langs/sk_SK/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakty / adries tretím stranám tejto AddressesForCompany=Adresy pre túto tretiu stranu ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Akcia o tomto členovi ActionsOnProduct=Events about this product NActionsLate=%s neskoro @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Vytvorte návrh SetToDraft=Späť na návrh ClickToEdit=Kliknutím možno upraviť diff --git a/htdocs/langs/sk_SK/products.lang b/htdocs/langs/sk_SK/products.lang index a03df89e6d1..5d92e95a649 100644 --- a/htdocs/langs/sk_SK/products.lang +++ b/htdocs/langs/sk_SK/products.lang @@ -2,6 +2,7 @@ ProductRef=Produkt čj. ProductLabel=Produkt štítok ProductLabelTranslated=Preložený názov produktu +ProductDescription=Product description ProductDescriptionTranslated=Preložený popis produktu ProductNoteTranslated=Preložená poznámka produktu ProductServiceCard=Produkty / služby karty diff --git a/htdocs/langs/sk_SK/stripe.lang b/htdocs/langs/sk_SK/stripe.lang index db2a3b0a561..988d8b8954c 100644 --- a/htdocs/langs/sk_SK/stripe.lang +++ b/htdocs/langs/sk_SK/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/sk_SK/withdrawals.lang b/htdocs/langs/sk_SK/withdrawals.lang index 945b76876df..f3ac8b522c5 100644 --- a/htdocs/langs/sk_SK/withdrawals.lang +++ b/htdocs/langs/sk_SK/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Odstúpenie súbor SetToStatusSent=Nastavte na stav "odoslaný súbor" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/sl_SI/accountancy.lang b/htdocs/langs/sl_SI/accountancy.lang index 9ece7db19d0..efd258369f9 100644 --- a/htdocs/langs/sl_SI/accountancy.lang +++ b/htdocs/langs/sl_SI/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Narava +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Prodaja AccountingJournalType3=Nabava @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/sl_SI/admin.lang b/htdocs/langs/sl_SI/admin.lang index 025ffcef4df..3a342353e7b 100644 --- a/htdocs/langs/sl_SI/admin.lang +++ b/htdocs/langs/sl_SI/admin.lang @@ -574,7 +574,7 @@ Module510Name=Plače Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Upravljanje posojil -Module600Name=Obvestila +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Koplementarni atributi (naročila) ExtraFieldsSupplierInvoices=Koplementarni atributi (računi) ExtraFieldsProject=Koplementarni atributi (projekti) ExtraFieldsProjectTask=Koplementarni atributi (naloge) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Atribut %s ima napačno vrednost. AlphaNumOnlyLowerCharsAndNoSpace=samo alfanumerični znaki in male črke brez presledkov SendmailOptionNotComplete=Pozor, na nekaterih Linux sistemih mora za pošiljanje pošte z vašega naslova nastavitev vsebovati opcijo -ba (parameter mail.force_extra_parameters v vaši datoteki php.ini). Če nekateri prejemniki nikoli ne dobijo pošte, poskusite popraviti PHP parameter z mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Shranjevanje seje kriptirano s Suhosin ConditionIsCurrently=Trenutni pogoj je %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Iskanje optimizacijo -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=Naložen je XDebug -XCacheInstalled=Naložen je XCache. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=Noben modul za upravljanje avtomatskega povečevanja zalog ni aktiviran. Zaloge se bodo povečale samo na osnovi ročnega vnosa. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Prag @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/sl_SI/bills.lang b/htdocs/langs/sl_SI/bills.lang index 199397eed37..b5349596ba5 100644 --- a/htdocs/langs/sl_SI/bills.lang +++ b/htdocs/langs/sl_SI/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Plačilo višje od opomina HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Označeno kot 'Plačano' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Označeno kot 'Delno plačano' ClassifyCanceled=Označeno kot 'Opuščeno' ClassifyClosed=Označeno kot 'Zaključeno' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Prikaži nadomestni račun ShowInvoiceAvoir=Prikaži dobropis ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Prikaži plačilo AlreadyPaid=Že plačano AlreadyPaidBack=Že vrnjeno plačilo diff --git a/htdocs/langs/sl_SI/errors.lang b/htdocs/langs/sl_SI/errors.lang index bfaf9c8505a..01117e09985 100644 --- a/htdocs/langs/sl_SI/errors.lang +++ b/htdocs/langs/sl_SI/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Posebni znaki niso dovoljeni v polju "%s" ErrorNumRefModel=V bazi podatkov obstaja referenca (%s), ki ni kompatibilna s tem pravilom za številčenje. Odstranite zapis ali preimenujte referenco za aktivacijo tega modula. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Napaka na maski ErrorBadMaskFailedToLocatePosOfSequence=Napaka, maska je brez zaporedne številke ErrorBadMaskBadRazMonth=Napaka, napačna resetirana vrednost @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/sl_SI/main.lang b/htdocs/langs/sl_SI/main.lang index efbfbfef0dc..81c4b2c3b23 100644 --- a/htdocs/langs/sl_SI/main.lang +++ b/htdocs/langs/sl_SI/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakti/naslovi za tega partnerja AddressesForCompany=Naslovi za tega partnerja ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Dogodki okoli tega člana ActionsOnProduct=Events about this product NActionsLate=%s zamujenih @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Ustvarite osnutek SetToDraft=Nazaj na osnutek ClickToEdit=Kliknite za urejanje diff --git a/htdocs/langs/sl_SI/products.lang b/htdocs/langs/sl_SI/products.lang index 050f1fe488d..6b69d44ad17 100644 --- a/htdocs/langs/sl_SI/products.lang +++ b/htdocs/langs/sl_SI/products.lang @@ -2,6 +2,7 @@ ProductRef=Referenca proizvoda ProductLabel=Naziv proizvoda ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Kartica proizvoda/storitve diff --git a/htdocs/langs/sl_SI/stripe.lang b/htdocs/langs/sl_SI/stripe.lang index 53ce253eb09..d5ce9df9811 100644 --- a/htdocs/langs/sl_SI/stripe.lang +++ b/htdocs/langs/sl_SI/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/sl_SI/withdrawals.lang b/htdocs/langs/sl_SI/withdrawals.lang index 630e07a41e2..98cce8e088e 100644 --- a/htdocs/langs/sl_SI/withdrawals.lang +++ b/htdocs/langs/sl_SI/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Datoteka nakazila SetToStatusSent=Nastavi status na "Datoteka poslana" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistika po statusu vrstic -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/sq_AL/accountancy.lang b/htdocs/langs/sq_AL/accountancy.lang index 8e1a61cb5bd..aca20774876 100644 --- a/htdocs/langs/sq_AL/accountancy.lang +++ b/htdocs/langs/sq_AL/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Mundësi OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/sq_AL/admin.lang b/htdocs/langs/sq_AL/admin.lang index c7a844db4d2..c4296b44853 100644 --- a/htdocs/langs/sq_AL/admin.lang +++ b/htdocs/langs/sq_AL/admin.lang @@ -574,7 +574,7 @@ Module510Name=Rrogat Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/sq_AL/bills.lang b/htdocs/langs/sq_AL/bills.lang index 6d410dc879e..d2700772a37 100644 --- a/htdocs/langs/sq_AL/bills.lang +++ b/htdocs/langs/sq_AL/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/sq_AL/errors.lang b/htdocs/langs/sq_AL/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/sq_AL/errors.lang +++ b/htdocs/langs/sq_AL/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/sq_AL/main.lang b/htdocs/langs/sq_AL/main.lang index 4164fdb1e11..4335079179b 100644 --- a/htdocs/langs/sq_AL/main.lang +++ b/htdocs/langs/sq_AL/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/sq_AL/products.lang b/htdocs/langs/sq_AL/products.lang index 629280cfda5..2966ac4af37 100644 --- a/htdocs/langs/sq_AL/products.lang +++ b/htdocs/langs/sq_AL/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/sq_AL/stripe.lang b/htdocs/langs/sq_AL/stripe.lang index 3db7c0cf2ee..6e3a15a2b20 100644 --- a/htdocs/langs/sq_AL/stripe.lang +++ b/htdocs/langs/sq_AL/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/sq_AL/withdrawals.lang b/htdocs/langs/sq_AL/withdrawals.lang index 4c146c2d43b..b4e13a898d8 100644 --- a/htdocs/langs/sq_AL/withdrawals.lang +++ b/htdocs/langs/sq_AL/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/sr_RS/accountancy.lang b/htdocs/langs/sr_RS/accountancy.lang index 02d455a8817..cb614d171d7 100644 --- a/htdocs/langs/sr_RS/accountancy.lang +++ b/htdocs/langs/sr_RS/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Priroda +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Prodaje AccountingJournalType3=Nabavke @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Započinjanje računovodstva InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Opcije OptionModeProductSell=Vrsta prodaje OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/sr_RS/admin.lang b/htdocs/langs/sr_RS/admin.lang index 1ac61447847..939e248f1d6 100644 --- a/htdocs/langs/sr_RS/admin.lang +++ b/htdocs/langs/sr_RS/admin.lang @@ -574,7 +574,7 @@ Module510Name=Plate Module510Desc=Record and track employee payments Module520Name=Krediti Module520Desc=Management of loans -Module600Name=Obaveštenja +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/sr_RS/bills.lang b/htdocs/langs/sr_RS/bills.lang index 41751c9406f..c0b740dd261 100644 --- a/htdocs/langs/sr_RS/bills.lang +++ b/htdocs/langs/sr_RS/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Iznos koji želite da platiteje viši od iznosa z HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Klasifikuj kao "plaćeno" +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Klasifikuj "delimično plaćeno" ClassifyCanceled=Klasifikuj "napušteno" ClassifyClosed=Klasifikuj "zatvoreno" @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/sr_RS/errors.lang b/htdocs/langs/sr_RS/errors.lang index 528823ad92e..f83d78fb8e2 100644 --- a/htdocs/langs/sr_RS/errors.lang +++ b/htdocs/langs/sr_RS/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Specijalni karakteri nisu dozvoljeni u polju ErrorNumRefModel=U bazi postoji referenca (%s) koja nije kompatibilna sa ovim pravilom. Uklonite taj red ili preimenujte referencu kako biste aktivirali ovaj modul. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Greška za masku ErrorBadMaskFailedToLocatePosOfSequence=Greška, maska bez broja sekvence ErrorBadMaskBadRazMonth=Greška, pogrešna reset vrednost @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=Lozinka je podešena za ovog člana, ali korisnik nije kreiran. To znači da je lozinka sačuvana, ali se član ne može ulogovati na Dolibarr. Informaciju može koristiti neka eksterna komponenta, ali ako nemate potrebe da definišete korisnika/lozinku za članove, možete deaktivirati opciju "Upravljanje lozinkama za svakog člana" u podešavanjima modula Članovi. Ukoliko morate da kreirate login, ali Vam nije potrebna lozinka, ostavite ovo polje prazno da se ovo upozorenje ne bi prikazivalo. Napomena: email može biti korišćen kao login ako je član povezan sa korisnikom. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/sr_RS/main.lang b/htdocs/langs/sr_RS/main.lang index 5ca0d505bd9..d75b23dfee9 100644 --- a/htdocs/langs/sr_RS/main.lang +++ b/htdocs/langs/sr_RS/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakti/adrese za ovaj subjekat AddressesForCompany=Adrese za ovaj subjekat ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Događaji vezani za ovog člana ActionsOnProduct=Events about this product NActionsLate=%s kasni @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Napravi draft SetToDraft=Nazad u draft ClickToEdit=Klikni za edit diff --git a/htdocs/langs/sr_RS/products.lang b/htdocs/langs/sr_RS/products.lang index 47fc76a533e..48a44deea4f 100644 --- a/htdocs/langs/sr_RS/products.lang +++ b/htdocs/langs/sr_RS/products.lang @@ -2,6 +2,7 @@ ProductRef=Ref. proizvoda ProductLabel=Oznaka proizvoda ProductLabelTranslated=Prevedeni naziv proizvoda +ProductDescription=Product description ProductDescriptionTranslated=Prevedeni opis proizvoda ProductNoteTranslated=Prevedena napomena proizvoda ProductServiceCard=Kartica Proizvoda/Usluga diff --git a/htdocs/langs/sr_RS/withdrawals.lang b/htdocs/langs/sr_RS/withdrawals.lang index 0c7d5011f58..f6b8495f608 100644 --- a/htdocs/langs/sr_RS/withdrawals.lang +++ b/htdocs/langs/sr_RS/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Fajl podizanja SetToStatusSent=Podesi status "Fajl poslat" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistike po statusu linija -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/sv_SE/accountancy.lang b/htdocs/langs/sv_SE/accountancy.lang index a97e82d5dfe..443a5d548de 100644 --- a/htdocs/langs/sv_SE/accountancy.lang +++ b/htdocs/langs/sv_SE/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Bokföringsloggbok AccountingJournal=Bokföringsloggbok NewAccountingJournal=Ny bokföringsloggbok ShowAccoutingJournal=Visa bokföringsloggbok -Nature=Naturen +NatureOfJournal=Nature of Journal AccountingJournalType1=Övrig verksamhet AccountingJournalType2=Försäljning AccountingJournalType3=Inköp @@ -291,6 +291,7 @@ Modelcsv_quadratus=Exportera till Quadratus QuadraCompta Modelcsv_ebp=Exportera till EBP Modelcsv_cogilog=Exportera till Cogilog Modelcsv_agiris=Exportera till Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Exportera CSV konfigurerbar Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Diagram över konton Id InitAccountancy=Initära bokföring InitAccountancyDesc=Den här sidan kan användas för att initiera ett konto på produkter och tjänster som inte har ett kontokonto definierat för försäljning och inköp. DefaultBindingDesc=Den här sidan kan användas för att ställa in ett standardkonto som ska användas för att koppla transaktionsrekord om betalningslön, donation, skatter och moms när inget specifikt kontokonto redan var inställt. -DefaultClosureDesc=Den här sidan kan användas för att ställa in parametrar som ska användas för att bifoga en balansräkning. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=alternativ OptionModeProductSell=Mode försäljning OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/sv_SE/admin.lang b/htdocs/langs/sv_SE/admin.lang index 1118f400fe0..13e135c84d8 100644 --- a/htdocs/langs/sv_SE/admin.lang +++ b/htdocs/langs/sv_SE/admin.lang @@ -574,7 +574,7 @@ Module510Name=Löner Module510Desc=Spela in och spåra anställda betalningar Module520Name=Lån Module520Desc=Förvaltning av lån -Module600Name=Anmälningar +Module600Name=Notifications on business event Module600Desc=Skicka e-postmeddelanden som utlöses av en företagshändelse: per användare (inställning definierad på varje användare), per tredjepartskontakter (inställning definierad på var tredje part) eller genom specifika e-postmeddelanden Module600Long=Observera att den här modulen skickar e-postmeddelanden i realtid när en viss företagshändelse inträffar. Om du letar efter en funktion för att skicka e-postpåminnelser för agendahändelser, gå till inställningen av modulens Agenda. Module610Name=Produktvarianter @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Kompletterande attribut (beslut) ExtraFieldsSupplierInvoices=Kompletterande attribut (fakturor) ExtraFieldsProject=Kompletterande attribut (projekt) ExtraFieldsProjectTask=Kompletterande attribut (arbetsuppgifter) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribut% s har ett felaktigt värde. AlphaNumOnlyLowerCharsAndNoSpace=endast gemena alfanumeriska tecken utan mellanslag SendmailOptionNotComplete=Varning, på vissa Linux-system, för att skicka e-post från e-post, sendmail utförande inställning måste conatins Alternativ-ba (parameter mail.force_extra_parameters i din php.ini-fil). Om vissa mottagare inte emot e-post, försök att redigera den här PHP parameter med mail.force_extra_parameters =-BA). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session lagring krypteras av Suhosin ConditionIsCurrently=Condition är för närvarande% s YouUseBestDriver=Du använder drivrutinen %s vilket är den bästa drivrutinen som för närvarande finns tillgänglig. YouDoNotUseBestDriver=Du använder drivrutinen %s men drivrutinen %s rekommenderas. -NbOfProductIsLowerThanNoPb=Du har bara %s produkter / tjänster i databasen. Detta kräver ingen särskild optimering. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Sökoptimering -YouHaveXProductUseSearchOptim=Du har %s produkter i databasen. Du bör lägga till den konstanta PRODUCT_DONOTSEARCH_ANYWHERE till 1 i Home-Setup-Other. Begränsa sökningen till början av strängar som gör det möjligt för databasen att använda index och du bör få ett omedelbart svar. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=Du använder %s webbläsaren. Den här webbläsaren är ok för säkerhet och prestanda. BrowserIsKO=Du använder %s webbläsaren. Den här webbläsaren är känd för att vara ett dåligt val för säkerhet, prestanda och tillförlitlighet. Vi rekommenderar att du använder Firefox, Chrome, Opera eller Safari. -XDebugInstalled=Xdebug är laddad. -XCacheInstalled=Xcache är laddad. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Visa kund / leverantör ref. info lista (välj lista eller combobox) och de flesta av hyperlänken.
Tredje part kommer att visas med ett namnformat av "CC12345 - SC45678 - The Big Company corp." istället för "The Big Company Corp". AddAdressInList=Visa adresslista för kund / leverantörs adress (välj lista eller combobox)
Tredje parten kommer att visas med ett namnformat för "The Big Company Corp." - 21 Jump Street 123456 Big Town - USA "istället för" The Big Company Corp ". AskForPreferredShippingMethod=Be om föredragen leveransmetod för tredje parter. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Inställning av modul Utläggsrapportsregler ExpenseReportNumberingModules=Modul för utläggsrapporteringsnummer NoModueToManageStockIncrease=Ingen modul kunna hantera automatiska lagerökningen har aktiverats. Stock ökning kommer att ske på bara manuell inmatning. YouMayFindNotificationsFeaturesIntoModuleNotification=Du kan hitta alternativ för e-postmeddelanden genom att aktivera och konfigurera modulen "Meddelande". -ListOfNotificationsPerUser=Lista över anmälningar per användare * -ListOfNotificationsPerUserOrContact=Lista över anmälningar (händelser) tillgängliga per användare * eller per kontakt ** -ListOfFixedNotifications=Lista över fasta meddelanden +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Gå till fliken "Notifieringar" för en användare för att lägga till eller ta bort meddelanden för användare GoOntoContactCardToAddMore=Gå på fliken "Notifieringar" från en tredje part för att lägga till eller ta bort meddelanden för kontakter / adresser Threshold=Tröskelvärde @@ -1898,6 +1900,11 @@ OnMobileOnly=På en liten skärm (smartphone) bara DisableProspectCustomerType=Inaktivera "Prospect + Customer" tredjepartstyp (så tredje part måste vara Prospect eller Kund men kan inte vara båda) MAIN_OPTIMIZEFORTEXTBROWSER=Förenkla gränssnittet för blinda personer MAIN_OPTIMIZEFORTEXTBROWSERDesc=Aktivera det här alternativet om du är blind person, eller om du använder programmet från en textbläsare som Lynx eller Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=Detta värde kan skrivas över av varje användare från användarens sida - fliken '%s' DefaultCustomerType=Standard tredjepartstyp för skapande av "Ny kund" ABankAccountMustBeDefinedOnPaymentModeSetup=Obs! Bankkontot måste definieras i modulen för varje betalningsläge (Paypal, Stripe, ...) för att den här funktionen ska fungera. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Antal rader som ska visas på loggfliken UseDebugBar=Använd felsökningsfältet DEBUGBAR_LOGS_LINES_NUMBER=Antal sista logglinjer för att hålla i konsolen WarningValueHigherSlowsDramaticalyOutput=Varning, högre värden sänker dramaticaly-utgången -DebugBarModuleActivated=Modul debugbar aktiveras och saktar dramatiskt gränssnittet +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Exportmodeller delas med alla ExportSetup=Inställning av modul Export InstanceUniqueID=Unikt ID för förekomsten @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/sv_SE/bills.lang b/htdocs/langs/sv_SE/bills.lang index 738c2068c9d..69025c706da 100644 --- a/htdocs/langs/sv_SE/bills.lang +++ b/htdocs/langs/sv_SE/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Betalning högre än påminnelse att betala HelpPaymentHigherThanReminderToPay=Observera är betalningsbeloppet för en eller flera räkningar högre än det utestående beloppet att betala.
Ändra din post, annars bekräfta och överväga att skapa en kreditnotering för det överskott som tas emot för varje överbetald faktura. HelpPaymentHigherThanReminderToPaySupplier=Observera är betalningsbeloppet för en eller flera räkningar högre än det utestående beloppet att betala.
Ändra din post, annars bekräfta och överväga att skapa en kreditnotering för det överskjutande beloppet för varje överbetald faktura. ClassifyPaid=Märk "betald" +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Märk "betalda delvis" ClassifyCanceled=Märk "övergivna" ClassifyClosed=Märk "avsluten" @@ -214,6 +215,20 @@ ShowInvoiceReplace=Visa ersätter faktura ShowInvoiceAvoir=Visa kreditnota ShowInvoiceDeposit=Visa nedbetalningsfaktura ShowInvoiceSituation=Visa lägesfaktura +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Visa betalning AlreadyPaid=Redan betalats ut AlreadyPaidBack=Redan återbetald diff --git a/htdocs/langs/sv_SE/errors.lang b/htdocs/langs/sv_SE/errors.lang index 8be0a0461f0..f4e435871f1 100644 --- a/htdocs/langs/sv_SE/errors.lang +++ b/htdocs/langs/sv_SE/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Speciella tecken är inte tillåtna för anv ErrorNumRefModel=En hänvisning finns i databasen (%s) och är inte förenligt med denna numrering regel. Ta bort post eller bytt namn hänvisning till aktivera den här modulen. ErrorQtyTooLowForThisSupplier=Mängden är för låg för den här försäljaren eller inget pris som definieras på denna produkt för den här försäljaren ErrorOrdersNotCreatedQtyTooLow=Vissa beställningar har inte skapats på grund av för låga kvantiteter -ErrorModuleSetupNotComplete=Inställningen av modulen ser ut att vara ofullständig. Gå hem - Inställningar - Moduler att slutföra. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Fel på masken ErrorBadMaskFailedToLocatePosOfSequence=Fel, mask utan löpnummer ErrorBadMaskBadRazMonth=Fel, dåligt återställningsvärde @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s måste börja med http: // eller https: // ErrorNewRefIsAlreadyUsed=Fel, den nya referensen används redan ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=Ett lösenord har ställts för den här medlemmen. Men inget användarkonto skapades. Så det här lösenordet är lagrat men kan inte användas för att logga in till Dolibarr. Den kan användas av en extern modul / gränssnitt men om du inte behöver definiera någon inloggning eller ett lösenord för en medlem kan du inaktivera alternativet "Hantera en inloggning för varje medlem" från inställningen av medlemsmodulen. Om du behöver hantera en inloggning men inte behöver något lösenord, kan du hålla fältet tomt för att undvika denna varning. Obs! Email kan också användas som inloggning om medlemmen är länkad till en användare. WarningMandatorySetupNotComplete=Klicka här för att ställa in obligatoriska parametrar WarningEnableYourModulesApplications=Klicka här för att aktivera dina moduler och applikationer diff --git a/htdocs/langs/sv_SE/main.lang b/htdocs/langs/sv_SE/main.lang index a18d6220a4a..ccc0b9aca07 100644 --- a/htdocs/langs/sv_SE/main.lang +++ b/htdocs/langs/sv_SE/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Kontakter / adresser för denna tredje part AddressesForCompany=Adresser för denna tredje part ActionsOnCompany=Evenemang för denna tredje part ActionsOnContact=Händelser för denna kontakt / adress +ActionsOnContract=Events for this contract ActionsOnMember=Händelser om denna medlem ActionsOnProduct=Händelser om denna produkt NActionsLate=%s sent @@ -759,6 +760,7 @@ LinkToSupplierProposal=Länk till leverantörsförslag LinkToSupplierInvoice=Länk till leverantörsfaktura LinkToContract=Länk till kontrakt LinkToIntervention=Länk till intervention +LinkToTicket=Link to ticket CreateDraft=Skapa utkast SetToDraft=Tillbaka till utkast ClickToEdit=Klicka för att redigera diff --git a/htdocs/langs/sv_SE/products.lang b/htdocs/langs/sv_SE/products.lang index 2497e61f09e..2950e11044b 100644 --- a/htdocs/langs/sv_SE/products.lang +++ b/htdocs/langs/sv_SE/products.lang @@ -2,6 +2,7 @@ ProductRef=Produkt ref. ProductLabel=Produktmärkning ProductLabelTranslated=Översatt produktetikett +ProductDescription=Product description ProductDescriptionTranslated=Översatt produktbeskrivning ProductNoteTranslated=Översatt produktnotat ProductServiceCard=Produkter / tjänster diff --git a/htdocs/langs/sv_SE/stripe.lang b/htdocs/langs/sv_SE/stripe.lang index 9213cb8b250..f93ea0b5655 100644 --- a/htdocs/langs/sv_SE/stripe.lang +++ b/htdocs/langs/sv_SE/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=Användarkonto som ska användas för e-postnotifier StripePayoutList=Lista över Stripe utbetalningar ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/sv_SE/withdrawals.lang b/htdocs/langs/sv_SE/withdrawals.lang index 46e809839dc..b36e78217df 100644 --- a/htdocs/langs/sv_SE/withdrawals.lang +++ b/htdocs/langs/sv_SE/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Utträde fil SetToStatusSent=Ställ in på status "File Skickat" ThisWillAlsoAddPaymentOnInvoice=Detta kommer också att registrera betalningar till fakturor och märka dem som "Betalda" om det kvarstår att betala är noll StatisticsByLineStatus=Statistik efter status linjer -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unik Mandatreferens RUMWillBeGenerated=Om tomt kommer en UMR (Unique Mandate Reference) att genereras när bankkontoinformationen är sparad. WithdrawMode=Direkt debiteringsläge (FRST eller RECUR) diff --git a/htdocs/langs/sw_SW/accountancy.lang b/htdocs/langs/sw_SW/accountancy.lang index 758d9c340a5..1fc3b3e05ec 100644 --- a/htdocs/langs/sw_SW/accountancy.lang +++ b/htdocs/langs/sw_SW/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/sw_SW/admin.lang b/htdocs/langs/sw_SW/admin.lang index f30d6edd9f7..2e27c6fe81f 100644 --- a/htdocs/langs/sw_SW/admin.lang +++ b/htdocs/langs/sw_SW/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/sw_SW/bills.lang b/htdocs/langs/sw_SW/bills.lang index 4f114d4df1c..53535e58b46 100644 --- a/htdocs/langs/sw_SW/bills.lang +++ b/htdocs/langs/sw_SW/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/sw_SW/errors.lang b/htdocs/langs/sw_SW/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/sw_SW/errors.lang +++ b/htdocs/langs/sw_SW/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/sw_SW/main.lang b/htdocs/langs/sw_SW/main.lang index 6efbe942032..1cadc32f4ab 100644 --- a/htdocs/langs/sw_SW/main.lang +++ b/htdocs/langs/sw_SW/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/sw_SW/products.lang b/htdocs/langs/sw_SW/products.lang index 7b68f5b3ebd..73e672284de 100644 --- a/htdocs/langs/sw_SW/products.lang +++ b/htdocs/langs/sw_SW/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/sw_SW/withdrawals.lang b/htdocs/langs/sw_SW/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/sw_SW/withdrawals.lang +++ b/htdocs/langs/sw_SW/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/th_TH/accountancy.lang b/htdocs/langs/th_TH/accountancy.lang index 32ea494ec01..b98134aa1cd 100644 --- a/htdocs/langs/th_TH/accountancy.lang +++ b/htdocs/langs/th_TH/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=ธรรมชาติ +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=ขาย AccountingJournalType3=การสั่งซื้อสินค้า @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/th_TH/admin.lang b/htdocs/langs/th_TH/admin.lang index bd4dd75398a..173ac63b62d 100644 --- a/htdocs/langs/th_TH/admin.lang +++ b/htdocs/langs/th_TH/admin.lang @@ -574,7 +574,7 @@ Module510Name=เงินเดือน Module510Desc=Record and track employee payments Module520Name=เงินให้กู้ยืม Module520Desc=การบริหารจัดการของเงินให้สินเชื่อ -Module600Name=การแจ้งเตือน +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=คุณลักษณะเสริม (คำส ExtraFieldsSupplierInvoices=คุณลักษณะเสริม (ใบแจ้งหนี้) ExtraFieldsProject=คุณลักษณะเสริม (โครงการ) ExtraFieldsProjectTask=คุณลักษณะเสริม (งาน) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=s Attribute% มีค่าที่ไม่ถูกต้อง AlphaNumOnlyLowerCharsAndNoSpace=alphanumericals เท่านั้นและอักขระตัวพิมพ์เล็กโดยไม่ต้องพื้นที่ SendmailOptionNotComplete=คำเตือนในบางระบบลินุกซ์ที่จะส่งอีเมลจากอีเมลของคุณตั้งค่าการดำเนินการต้องมี sendmail -ba ตัวเลือก (mail.force_extra_parameters พารามิเตอร์ลงในไฟล์ php.ini ของคุณ) หากผู้รับบางคนไม่เคยได้รับอีเมลพยายามที่จะแก้ไขพารามิเตอร์ PHP นี้กับ mail.force_extra_parameters = -ba) @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=เซสชั่นการจัดเก็บข้ ConditionIsCurrently=สภาพปัจจุบันคือ% s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=ค้นหาการเพิ่มประสิทธิภาพ -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug โหลด -XCacheInstalled=XCache โหลด +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=ไม่มีโมดูลสามารถจัดการกับการเพิ่มขึ้นของสต็อกอัตโนมัติถูกเปิดใช้งาน การเพิ่มขึ้นของสต็อกจะทำได้ในการป้อนข้อมูลด้วยตนเอง YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=ธรณีประตู @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/th_TH/bills.lang b/htdocs/langs/th_TH/bills.lang index 17b76759851..57d4a46221d 100644 --- a/htdocs/langs/th_TH/bills.lang +++ b/htdocs/langs/th_TH/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=การชำระเงินที่สู HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=จำแนก 'ชำระเงิน' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=จำแนก 'ชำระบางส่วน' ClassifyCanceled=จำแนก 'Abandoned' ClassifyClosed=จำแนก 'ปิด' @@ -214,6 +215,20 @@ ShowInvoiceReplace=แสดงการเปลี่ยนใบแจ้ง ShowInvoiceAvoir=แสดงใบลดหนี้ ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=แสดงการชำระเงิน AlreadyPaid=จ่ายเงินไปแล้ว AlreadyPaidBack=จ่ายเงินไปแล้วกลับมา diff --git a/htdocs/langs/th_TH/errors.lang b/htdocs/langs/th_TH/errors.lang index 66063d8262a..ff3ae3c3447 100644 --- a/htdocs/langs/th_TH/errors.lang +++ b/htdocs/langs/th_TH/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=อักขระพิเศษไม่ไ ErrorNumRefModel=การอ้างอิงที่มีอยู่ในฐานข้อมูล (% s) และไม่ได้เข้ากันได้กับกฎหมายเลขนี้ ลบบันทึกการอ้างอิงหรือเปลี่ยนชื่อเพื่อเปิดใช้งานโมดูลนี้ ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=ข้อผิดพลาดในหน้ากาก ErrorBadMaskFailedToLocatePosOfSequence=ข้อผิดพลาดหน้ากากไม่มีหมายเลขลำดับ ErrorBadMaskBadRazMonth=ข้อผิดพลาดค่าการตั้งค่าที่ไม่ดี @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/th_TH/main.lang b/htdocs/langs/th_TH/main.lang index 1b5fa626326..6bdb2dea072 100644 --- a/htdocs/langs/th_TH/main.lang +++ b/htdocs/langs/th_TH/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=รายชื่อ / ที่อยู่สำ AddressesForCompany=สำหรับที่อยู่ของบุคคลที่สามนี้ ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=เหตุการณ์ที่เกิดขึ้นเกี่ยวกับสมาชิกในนี้ ActionsOnProduct=Events about this product NActionsLate=% s ปลาย @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=สร้างร่าง SetToDraft=กลับไปร่าง ClickToEdit=คลิกเพื่อแก้ไข diff --git a/htdocs/langs/th_TH/products.lang b/htdocs/langs/th_TH/products.lang index ce6d14c6dc6..486cd4ee828 100644 --- a/htdocs/langs/th_TH/products.lang +++ b/htdocs/langs/th_TH/products.lang @@ -2,6 +2,7 @@ ProductRef=สินค้าอ้างอิง ProductLabel=ฉลากสินค้า ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=สินค้า / บริการบัตร diff --git a/htdocs/langs/th_TH/stripe.lang b/htdocs/langs/th_TH/stripe.lang index c0a5acea926..ddc7ffc500e 100644 --- a/htdocs/langs/th_TH/stripe.lang +++ b/htdocs/langs/th_TH/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/th_TH/withdrawals.lang b/htdocs/langs/th_TH/withdrawals.lang index b46cf195258..03c1a484b60 100644 --- a/htdocs/langs/th_TH/withdrawals.lang +++ b/htdocs/langs/th_TH/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=ไฟล์ถอนเงิน SetToStatusSent=ตั้งสถานะ "แฟ้มส่ง" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=สถิติตามสถานะของสาย -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/tr_TR/accountancy.lang b/htdocs/langs/tr_TR/accountancy.lang index abce087b09e..391d2cf15bc 100644 --- a/htdocs/langs/tr_TR/accountancy.lang +++ b/htdocs/langs/tr_TR/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Muhasebe günlükleri AccountingJournal=Muhasebe günlüğü NewAccountingJournal=Yeni muhasebe günlüğü ShowAccoutingJournal=Muhasebe günlüğünü göster -Nature=Niteliği +NatureOfJournal=Nature of Journal AccountingJournalType1=Çeşitli işlemler AccountingJournalType2=Satışlar AccountingJournalType3=Alışlar @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=EBP için dışa aktarım Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Hesap planı Id InitAccountancy=Muhasebe başlangıcı InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Seçenekler OptionModeProductSell=Satış modu OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/tr_TR/admin.lang b/htdocs/langs/tr_TR/admin.lang index 4ec639898e0..7ff3a990796 100644 --- a/htdocs/langs/tr_TR/admin.lang +++ b/htdocs/langs/tr_TR/admin.lang @@ -574,7 +574,7 @@ Module510Name=Ücretler Module510Desc=Çalışan ödemelerini kaydedin ve takip edin Module520Name=Krediler Module520Desc=Borçların yönetimi -Module600Name=Bildirimler +Module600Name=Notifications on business event Module600Desc=Bir iş etkinliği tarafından tetiklenen e-posta bildirimleri gönderin: her kullanıcı için (her bir kullanıcı için tanımlanmış kurulum), her üçüncü parti kişisi için (her bir üçüncü parti için tanımlanmış kurulum) veya belirli e-postalara göre. Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Ürün Değişkenleri @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Tamamlayıcı öznitelikler (siparişler) ExtraFieldsSupplierInvoices=Tamamlayıcı öznitelikler (faturalar) ExtraFieldsProject=Tamamlayıcı öznitelikler (projeler) ExtraFieldsProjectTask=Tamamlayıcı öznitelikler (görevler) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Öznitelik %s için hatalı değer. AlphaNumOnlyLowerCharsAndNoSpace=yalnızca boşluksuz olarak alfasayısal ve küçük harfli karakterler SendmailOptionNotComplete=Uyarı: Bazı Linux sistemlerinde, e-posta adresinizden mail göndermek için sendmail yürütme kurulumu -ba seçeneğini içermelidir (php.ini dosyanızın içindeki parameter mail.force_extra_parameters). Eğer bazı alıcılar hiç e-posta alamazsa, bu PHP parametresini mail.force_extra_parameters = -ba ile düzenlemeye çalışın. @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Oturum depolaması Suhosin tarafından şifrelendi ConditionIsCurrently=Koşul şu anda %s durumunda YouUseBestDriver=Kullandığınız %s sürücüsü şu anda mevcut olan en iyi sürücüdür. YouDoNotUseBestDriver=%s sürücüsünü kullanıyorsunuz fakat %s sürücüsü önerilir. -NbOfProductIsLowerThanNoPb=Veritabanında sadece %s ürün/hizmet var. Bu, özel bir optimizasyon gerektirmez. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Optimizasyon ara -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=%s web tarayıcısını kullanıyorsunuz. Bu tarayıcı güvenlik ve performans açısından uygundur. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug yüklüdür. -XCacheInstalled=XDebug yüklüdür. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Üçüncü Partiler için tercih edilen gönderme yöntemini isteyin. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Gider Raporları modülü kurulumu - Kurallar ExpenseReportNumberingModules=Gider raporları numaralandırma modülü NoModueToManageStockIncrease=Otomatik stok arttırılması yapabilecek hiçbir modül etkinleştirilmemiş. Stok arttırılması yalnızca elle girişle yapılacaktır. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=Kullanıcı başına bildirimler listesi* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=Sabit Bildirimlerin Listesi +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Kullanıcılar için bildirim eklemek veya silmek için kullanıcının "Bildirimler" sekmesine gidin GoOntoContactCardToAddMore=Kişilerden/adreslerden bildirimleri eklemek ya da kaldırmak için üçüncü taraf kişileri "Bildirimler" sekmesine git Threshold=Sınır @@ -1898,6 +1900,11 @@ OnMobileOnly=Sadece küçük ekranda (akıllı telefon) DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Görme engelli insanlar için arayüzü basitleştir MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType="Yeni müşteri" oluşturma formunda varsayılan üçüncü parti türü ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Hata ayıklama çubuğunu kullan DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Hata Ayıklama Çubuğu Modülü etkinleştirildi ve arayüzü önemli ölçüde yavaşlatıyor +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Dışa aktarma modelleri herkesle paylaşılır ExportSetup=Dışa aktarma modülünün kurulumu InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=Onu IFTTT hesabınızda bulacaksınız EndPointFor=%s için bitiş noktası: %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/tr_TR/bills.lang b/htdocs/langs/tr_TR/bills.lang index 53d372c93fd..8aa7e20097c 100644 --- a/htdocs/langs/tr_TR/bills.lang +++ b/htdocs/langs/tr_TR/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Ödeme hatırlatmasından daha yüksek ödeme HelpPaymentHigherThanReminderToPay=Dikkat: bir veya daha fazla faturanın ödeme tutarı ödenecek kalan miktardan daha yüksek.
Girişinizi düzeltin, aksi takdirde onaylayın ve fazla ödeme alınan her fatura için alınan fazlalık tutarında bir alacak dekontu oluşturmayı düşünün. HelpPaymentHigherThanReminderToPaySupplier=Dikkat: bir veya daha fazla faturanın ödeme tutarı ödenecek kalan miktardan daha yüksek.
Girişinizi düzeltin, aksi takdirde onaylayın ve fazla ödeme yapılan her fatura için ödenen fazlalık tutarında bir alacak dekontu oluşturmayı düşünün. ClassifyPaid=Sınıflandırma ‘Ödendi’ +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Sınıflandırma ‘Kısmen ödendi’ ClassifyCanceled=’Terkedildi’ olarak sınıflandır ClassifyClosed=‘Kapalı’ olarak sınıflandır @@ -214,6 +215,20 @@ ShowInvoiceReplace=Değiştirilen faturayı göster ShowInvoiceAvoir=İade faturası göster ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Hakediş faturası göster +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Ödeme göster AlreadyPaid=Zaten ödenmiş AlreadyPaidBack=Zaten geri ödenmiş diff --git a/htdocs/langs/tr_TR/errors.lang b/htdocs/langs/tr_TR/errors.lang index 714b9d6c9ac..9a946adca70 100644 --- a/htdocs/langs/tr_TR/errors.lang +++ b/htdocs/langs/tr_TR/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=%s alanında özel karakterlere izin verilmez ErrorNumRefModel=Veritabanına (%s) bir başvuru var ve bu numaralandırma kuralı ile uyumlu değildir. Kaydı kaldırın ya da bu modülü etkinleştirmek için başvurunun adını değiştirin. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Modül ayarı tamamlanmamış gibi görünüyor. Tamamlamak için Giriş - Ayarlar - Modüller menüsüne git. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Maskede hata ErrorBadMaskFailedToLocatePosOfSequence=Hata, sıra numarasız maske ErrorBadMaskBadRazMonth=Hata, kötü sıfırlama değeri @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=Bu üye için bir parola ayarlıdır. Ancak, hiçbir kullanıcı hesabı oluşturulmamıştır. Yani bu şifre saklanır ama Dolibarr'a giriş için kullanılamaz. Dış bir modül/arayüz tarafından kullanılıyor olabilir, ama bir üye için ne bir kullanıcı adı ne de parola tanımlamanız gerekmiyorsa "Her üye için bir kullanıcı adı yönet" seçeneğini devre dışı bırakabilirsiniz. Bir kullanıcı adı yönetmeniz gerekiyorsa ama herhangi bir parolaya gereksinim duymuyorsanız bu uyarıyı engellemek için bu alanı boş bırakabilirsiniz. Not: Eğer bir üye bir kullanıcıya bağlıysa kullanıcı adı olarak e-posta adresi de kullanılabilir. WarningMandatorySetupNotComplete=Zorunlu parametreleri ayarlamak için buraya tıklayın WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/tr_TR/main.lang b/htdocs/langs/tr_TR/main.lang index 4edc9cbc7a4..a4acb9620a3 100644 --- a/htdocs/langs/tr_TR/main.lang +++ b/htdocs/langs/tr_TR/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Bu üçüncü partinin kişleri/adresleri AddressesForCompany=Bu üçüncü partinin adresleri ActionsOnCompany=Bu üçüncü taraf için etkinlikler ActionsOnContact=Bu kişi/adres için etkinlikler +ActionsOnContract=Events for this contract ActionsOnMember=Bu üye hakkındaki etkinlikler ActionsOnProduct=Bu ürünle ilgili etkinlikler NActionsLate=%s son @@ -759,6 +760,7 @@ LinkToSupplierProposal=Tedarikçi teklifine bağlantıla LinkToSupplierInvoice=Tedarikçi faturasına bağlantıla LinkToContract=Kişiye bağlantıla LinkToIntervention=Müdahaleye bağlantıla +LinkToTicket=Link to ticket CreateDraft=Taslak oluştur SetToDraft=Taslağa geri dön ClickToEdit=Düzenlemek için tıklayın diff --git a/htdocs/langs/tr_TR/products.lang b/htdocs/langs/tr_TR/products.lang index 46b15d67da5..65f9f9ac6d2 100644 --- a/htdocs/langs/tr_TR/products.lang +++ b/htdocs/langs/tr_TR/products.lang @@ -2,6 +2,7 @@ ProductRef=Ürün ref. ProductLabel=Ürün etiketi ProductLabelTranslated=Çevirilmiş ürün etiketi +ProductDescription=Product description ProductDescriptionTranslated=Çevirilmiş ürün tanımı ProductNoteTranslated=Çevirilmiş ürün notu ProductServiceCard=Ürün/Hizmet kartı diff --git a/htdocs/langs/tr_TR/stripe.lang b/htdocs/langs/tr_TR/stripe.lang index a3c26c4b346..e386539b755 100644 --- a/htdocs/langs/tr_TR/stripe.lang +++ b/htdocs/langs/tr_TR/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/tr_TR/withdrawals.lang b/htdocs/langs/tr_TR/withdrawals.lang index 001dacc9c1e..68e1b28efe9 100644 --- a/htdocs/langs/tr_TR/withdrawals.lang +++ b/htdocs/langs/tr_TR/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Para çekme dosyası SetToStatusSent="Dosya Gönderildi" durumuna ayarla ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Durum satırlarına göre istatistkler -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Otomatik ödeme modu (FRST veya RECUR) diff --git a/htdocs/langs/uk_UA/accountancy.lang b/htdocs/langs/uk_UA/accountancy.lang index 2c0c96bb664..868f3378bbc 100644 --- a/htdocs/langs/uk_UA/accountancy.lang +++ b/htdocs/langs/uk_UA/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/uk_UA/admin.lang b/htdocs/langs/uk_UA/admin.lang index 2aa26a32a3b..620e9f7db8c 100644 --- a/htdocs/langs/uk_UA/admin.lang +++ b/htdocs/langs/uk_UA/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Оповіщення +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/uk_UA/bills.lang b/htdocs/langs/uk_UA/bills.lang index 667a89a60fe..56a17b860f9 100644 --- a/htdocs/langs/uk_UA/bills.lang +++ b/htdocs/langs/uk_UA/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Платіж більший, ніж в нагад HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Класифікувати як 'Сплачений' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Класифікувати як 'Сплачений частково' ClassifyCanceled=Класифікувати як 'Анулюваний' ClassifyClosed=Класифікувати як 'Закритий' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Показати замінюючий рахунок-факт ShowInvoiceAvoir=Показати кредитое авізо ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Показати платіж AlreadyPaid=Вже сплачений AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/uk_UA/errors.lang b/htdocs/langs/uk_UA/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/uk_UA/errors.lang +++ b/htdocs/langs/uk_UA/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/uk_UA/main.lang b/htdocs/langs/uk_UA/main.lang index 609709def1b..a0ffc3aa9c2 100644 --- a/htdocs/langs/uk_UA/main.lang +++ b/htdocs/langs/uk_UA/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/uk_UA/products.lang b/htdocs/langs/uk_UA/products.lang index f57c6b76c36..b358dc16410 100644 --- a/htdocs/langs/uk_UA/products.lang +++ b/htdocs/langs/uk_UA/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/uk_UA/stripe.lang b/htdocs/langs/uk_UA/stripe.lang index 7a3389f34b7..c5224982873 100644 --- a/htdocs/langs/uk_UA/stripe.lang +++ b/htdocs/langs/uk_UA/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/uk_UA/withdrawals.lang b/htdocs/langs/uk_UA/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/uk_UA/withdrawals.lang +++ b/htdocs/langs/uk_UA/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/uz_UZ/accountancy.lang b/htdocs/langs/uz_UZ/accountancy.lang index 758d9c340a5..1fc3b3e05ec 100644 --- a/htdocs/langs/uz_UZ/accountancy.lang +++ b/htdocs/langs/uz_UZ/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Nature +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Sales AccountingJournalType3=Purchases @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/uz_UZ/admin.lang b/htdocs/langs/uz_UZ/admin.lang index f30d6edd9f7..2e27c6fe81f 100644 --- a/htdocs/langs/uz_UZ/admin.lang +++ b/htdocs/langs/uz_UZ/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=Management of loans -Module600Name=Notifications +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Complementary attributes (orders) ExtraFieldsSupplierInvoices=Complementary attributes (invoices) ExtraFieldsProject=Complementary attributes (projects) ExtraFieldsProjectTask=Complementary attributes (tasks) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Attribute %s has a wrong value. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Condition is currently %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Search optimization -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=No module able to manage automatic stock increase has been activated. Stock increase will be done on manual input only. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/uz_UZ/bills.lang b/htdocs/langs/uz_UZ/bills.lang index 4f114d4df1c..53535e58b46 100644 --- a/htdocs/langs/uz_UZ/bills.lang +++ b/htdocs/langs/uz_UZ/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Payment higher than reminder to pay HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Classify 'Paid' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Classify 'Paid partially' ClassifyCanceled=Classify 'Abandoned' ClassifyClosed=Classify 'Closed' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Show replacing invoice ShowInvoiceAvoir=Show credit note ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Show situation invoice +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Show payment AlreadyPaid=Already paid AlreadyPaidBack=Already paid back diff --git a/htdocs/langs/uz_UZ/errors.lang b/htdocs/langs/uz_UZ/errors.lang index b5a9d70cb70..1ee46fdbb92 100644 --- a/htdocs/langs/uz_UZ/errors.lang +++ b/htdocs/langs/uz_UZ/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Special characters are not allowed for field ErrorNumRefModel=A reference exists into database (%s) and is not compatible with this numbering rule. Remove record or renamed reference to activate this module. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Error on mask ErrorBadMaskFailedToLocatePosOfSequence=Error, mask without sequence number ErrorBadMaskBadRazMonth=Error, bad reset value @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/uz_UZ/main.lang b/htdocs/langs/uz_UZ/main.lang index c9487388ab3..d578c882ad5 100644 --- a/htdocs/langs/uz_UZ/main.lang +++ b/htdocs/langs/uz_UZ/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Contacts/addresses for this third party AddressesForCompany=Addresses for this third party ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Events about this member ActionsOnProduct=Events about this product NActionsLate=%s late @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Create draft SetToDraft=Back to draft ClickToEdit=Click to edit diff --git a/htdocs/langs/uz_UZ/products.lang b/htdocs/langs/uz_UZ/products.lang index 7b68f5b3ebd..73e672284de 100644 --- a/htdocs/langs/uz_UZ/products.lang +++ b/htdocs/langs/uz_UZ/products.lang @@ -2,6 +2,7 @@ ProductRef=Product ref. ProductLabel=Product label ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card diff --git a/htdocs/langs/uz_UZ/withdrawals.lang b/htdocs/langs/uz_UZ/withdrawals.lang index cbca2b2f103..88e5eaf128c 100644 --- a/htdocs/langs/uz_UZ/withdrawals.lang +++ b/htdocs/langs/uz_UZ/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/vi_VN/accountancy.lang b/htdocs/langs/vi_VN/accountancy.lang index 68b3358d211..56aecdb1bbf 100644 --- a/htdocs/langs/vi_VN/accountancy.lang +++ b/htdocs/langs/vi_VN/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=Accounting journals AccountingJournal=Accounting journal NewAccountingJournal=New accounting journal ShowAccoutingJournal=Show accounting journal -Nature=Tự nhiên +NatureOfJournal=Nature of Journal AccountingJournalType1=Miscellaneous operations AccountingJournalType2=Bán AccountingJournalType3=Mua @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=Chart of accounts Id InitAccountancy=Init accountancy InitAccountancyDesc=This page can be used to initialize an accounting account on products and services that does not have accounting account defined for sales and purchases. DefaultBindingDesc=This page can be used to set a default account to use to link transactions record about payment salaries, donation, taxes and vat when no specific accounting account were already set. -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=Options OptionModeProductSell=Mode sales OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/vi_VN/admin.lang b/htdocs/langs/vi_VN/admin.lang index 634eb06628e..ecc0d998ca1 100644 --- a/htdocs/langs/vi_VN/admin.lang +++ b/htdocs/langs/vi_VN/admin.lang @@ -574,7 +574,7 @@ Module510Name=Lương Module510Desc=Record and track employee payments Module520Name=Cho vay Module520Desc=Quản lý cho vay -Module600Name=Thông báo +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=Product Variants @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=Thuộc tính bổ sung (đơn hàng) ExtraFieldsSupplierInvoices=Thuộc tính bổ sung (hoá đơn) ExtraFieldsProject=Thuộc tính bổ sung (dự án) ExtraFieldsProjectTask=Thuộc tính bổ sung (nhiệm vụ) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=Thuộc tính %s có giá trị sai. AlphaNumOnlyLowerCharsAndNoSpace=only alphanumericals and lower case characters without space SendmailOptionNotComplete=Warning, on some Linux systems, to send email from your email, sendmail execution setup must contains option -ba (parameter mail.force_extra_parameters into your php.ini file). If some recipients never receive emails, try to edit this PHP parameter with mail.force_extra_parameters = -ba). @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=Session storage encrypted by Suhosin ConditionIsCurrently=Điều kiện là hiện tại %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=Tối ưu hóa tìm kiếm -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug is loaded. -XCacheInstalled=XCache is loaded. +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=Setup of module Expense Reports - Rules ExpenseReportNumberingModules=Expense reports numbering module NoModueToManageStockIncrease=Không có module có thể quản lý tăng tồn kho được kích hoạt. Tăng tồn kho sẽ chỉ được thực hiện thủ công. YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=List of notifications per user* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=Go on the tab "Notifications" of a third party to add or remove notifications for contacts/addresses Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/vi_VN/bills.lang b/htdocs/langs/vi_VN/bills.lang index d04d4324fcd..e2b2a11cbee 100644 --- a/htdocs/langs/vi_VN/bills.lang +++ b/htdocs/langs/vi_VN/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=Thanh toán cao hơn so với đề nghị trả HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=Phân loại 'Đã trả' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=Phân loại 'Đã trả một phần' ClassifyCanceled=Phân loại 'Đã loại bỏ' ClassifyClosed=Phân loại 'Đã đóng' @@ -214,6 +215,20 @@ ShowInvoiceReplace=Hiển thị hóa đơn thay thế ShowInvoiceAvoir=Xem giấy báo có ShowInvoiceDeposit=Show down payment invoice ShowInvoiceSituation=Xem hóa đơn tình huống +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=Hiển thị thanh toán AlreadyPaid=Đã trả AlreadyPaidBack=Đã trả lại diff --git a/htdocs/langs/vi_VN/errors.lang b/htdocs/langs/vi_VN/errors.lang index dd27b05a079..dcfe5118f12 100644 --- a/htdocs/langs/vi_VN/errors.lang +++ b/htdocs/langs/vi_VN/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=Ký tự đặc biệt không được phép ErrorNumRefModel=Một tham chiếu tồn tại vào cơ sở dữ liệu (% s) và không tương thích với quy tắc đánh số này. Di chuyển hồ sơ hoặc tài liệu tham khảo đổi tên để kích hoạt module này. ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=Lỗi trên mặt nạ ErrorBadMaskFailedToLocatePosOfSequence=Lỗi, mặt nạ mà không có số thứ tự ErrorBadMaskBadRazMonth=Lỗi, giá trị thiết lập lại xấu @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/vi_VN/main.lang b/htdocs/langs/vi_VN/main.lang index 145e971080c..825708ec534 100644 --- a/htdocs/langs/vi_VN/main.lang +++ b/htdocs/langs/vi_VN/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=Liên lạc/địa chỉ cho bên thứ ba này AddressesForCompany=Địa chỉ cho bên thứ ba này ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=Sự kiện về thành viên này ActionsOnProduct=Events about this product NActionsLate=%s cuối @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=Link to contract LinkToIntervention=Link to intervention +LinkToTicket=Link to ticket CreateDraft=Tạo dự thảo SetToDraft=Trở về dự thảo ClickToEdit=Nhấn vào để sửa diff --git a/htdocs/langs/vi_VN/products.lang b/htdocs/langs/vi_VN/products.lang index 48b032f77fc..84be0e8db9e 100644 --- a/htdocs/langs/vi_VN/products.lang +++ b/htdocs/langs/vi_VN/products.lang @@ -2,6 +2,7 @@ ProductRef=Tham chiếu sản phẩm. ProductLabel=Nhãn sản phẩm ProductLabelTranslated=Nhãn sản phẩm đã dịch +ProductDescription=Product description ProductDescriptionTranslated=Mô tả sản phẩm đã dịch ProductNoteTranslated=Ghi chú sản phẩm đã dịch ProductServiceCard=Thẻ Sản phẩm/Dịch vụ diff --git a/htdocs/langs/vi_VN/stripe.lang b/htdocs/langs/vi_VN/stripe.lang index 6c47d33cb8b..77337d06301 100644 --- a/htdocs/langs/vi_VN/stripe.lang +++ b/htdocs/langs/vi_VN/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/vi_VN/withdrawals.lang b/htdocs/langs/vi_VN/withdrawals.lang index 43a21ea82c2..9aa1a1d441c 100644 --- a/htdocs/langs/vi_VN/withdrawals.lang +++ b/htdocs/langs/vi_VN/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Thu hồi tập tin SetToStatusSent=Thiết lập để tình trạng "File gửi" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) diff --git a/htdocs/langs/zh_CN/accountancy.lang b/htdocs/langs/zh_CN/accountancy.lang index 1d3e23e0f66..75b91959f8d 100644 --- a/htdocs/langs/zh_CN/accountancy.lang +++ b/htdocs/langs/zh_CN/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=会计日常报表 AccountingJournal=会计日常报表 NewAccountingJournal=新建会计日常报表 ShowAccoutingJournal=显示会计日常报表 -Nature=属性 +NatureOfJournal=Nature of Journal AccountingJournalType1=杂项业务 AccountingJournalType2=销售 AccountingJournalType3=采购 @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=导出CSV可配置 Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=会计科目表ID InitAccountancy=初始化会计 InitAccountancyDesc=此页面可用于初始化没有为销售和购买定义的会计科目的产品和服务的会计科目。 DefaultBindingDesc=此页面可用于设置默认帐户,用于在未设置特定会计帐户时链接有关付款工资,捐款,税金和增值税的交易记录。 -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=选项 OptionModeProductSell=销售模式 OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/zh_CN/admin.lang b/htdocs/langs/zh_CN/admin.lang index 93299ace4fa..01524a3067f 100644 --- a/htdocs/langs/zh_CN/admin.lang +++ b/htdocs/langs/zh_CN/admin.lang @@ -574,7 +574,7 @@ Module510Name=工资 Module510Desc=Record and track employee payments Module520Name=贷款 Module520Desc=贷款管理模块 -Module600Name=通知 +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=产品变体 @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=自定义属性 (订单) ExtraFieldsSupplierInvoices=自定义属性 (账单) ExtraFieldsProject=自定义属性 (项目) ExtraFieldsProjectTask=自定义属性 (任务) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=属性 %s 有一个错误的值。 AlphaNumOnlyLowerCharsAndNoSpace=仅限英文大小写字母不含空格 SendmailOptionNotComplete=警告,在某些Linux系统上,要从您的电子邮件发送电子邮件,sendmail执行设置必须包含选项-ba(参数mail.force_extra_parameters到您的php.ini文件中)。如果某些收件人从未收到电子邮件,请尝试使用mail.force_extra_parameters = -ba编辑此PHP参数。 @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=会话存储空间已用 Suhosin 加密 ConditionIsCurrently=当前条件为 %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=搜索优化 -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=XDebug 已经加载。 -XCacheInstalled=XCache已经加载。 +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=模块费用报告的设置 - 规则 ExpenseReportNumberingModules=费用报告编号模块 NoModueToManageStockIncrease=没有能够管理自动库存增加的模块已被激活。库存增加仅在手动输入时完成。 YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=每个用户的通知列表* -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=转到合作方的“通知”标签,添加或删除联系人/地址的通知 Threshold=阈值 @@ -1898,6 +1900,11 @@ OnMobileOnly=On small screen (smartphone) only DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/zh_CN/bills.lang b/htdocs/langs/zh_CN/bills.lang index f4dd4ef5c4e..4ae6ac4679b 100644 --- a/htdocs/langs/zh_CN/bills.lang +++ b/htdocs/langs/zh_CN/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=付款金额比需要支付的金额高 HelpPaymentHigherThanReminderToPay=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess received for each overpaid invoice. HelpPaymentHigherThanReminderToPaySupplier=Attention, the payment amount of one or more bills is higher than the outstanding amount to pay.
Edit your entry, otherwise confirm and consider creating a credit note for the excess paid for each overpaid invoice. ClassifyPaid=归类为 已支付 +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=归类分 部分支付 ClassifyCanceled=归类为 已丢弃 ClassifyClosed=归类为 已关闭 @@ -214,6 +215,20 @@ ShowInvoiceReplace=显示替换发票 ShowInvoiceAvoir=显示信用记录 ShowInvoiceDeposit=显示付款发票 ShowInvoiceSituation=显示情况发票 +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=显示支付 AlreadyPaid=已支付 AlreadyPaidBack=已支付 diff --git a/htdocs/langs/zh_CN/errors.lang b/htdocs/langs/zh_CN/errors.lang index 6e232a35a83..d2c54579d93 100644 --- a/htdocs/langs/zh_CN/errors.lang +++ b/htdocs/langs/zh_CN/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=特殊字符不为外地允许“%s的” ErrorNumRefModel=存在一个引用(%s)和编号是不符合本规则兼容到数据库。记录中删除或重命名参考激活此模块。 ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=模块设置看起来未完成设置。请到 主页->设置->模块菜单 完成模块的设置。 +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=在面具的错误 ErrorBadMaskFailedToLocatePosOfSequence=没有序列号错误,面具 ErrorBadMaskBadRazMonth=错误,坏的复位值 @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=为此成员设置了密码。但是,未创建任何用户帐户。因此,此密码已存储,但无法用于登录Dolibarr。它可以由外部模块/接口使用,但如果您不需要为成员定义任何登录名或密码,则可以从成员模块设置中禁用“管理每个成员的登录名”选项。如果您需要管理登录但不需要任何密码,则可以将此字段保留为空以避免此警告。注意:如果成员链接到用户,则电子邮件也可用作登录。 WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/zh_CN/main.lang b/htdocs/langs/zh_CN/main.lang index f7f6a58e93c..3197d345e98 100644 --- a/htdocs/langs/zh_CN/main.lang +++ b/htdocs/langs/zh_CN/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=这个合伙人联系人/地址 AddressesForCompany=这个合伙人的地址 ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=有关此会员的事件 ActionsOnProduct=有关此产品的事件 NActionsLate=逾期 %s @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=链接到联系人 LinkToIntervention=链接到干预 +LinkToTicket=Link to ticket CreateDraft=创建草稿 SetToDraft=返回草稿 ClickToEdit=单击“编辑” diff --git a/htdocs/langs/zh_CN/products.lang b/htdocs/langs/zh_CN/products.lang index a1323c8069d..e10aeb3b1b4 100644 --- a/htdocs/langs/zh_CN/products.lang +++ b/htdocs/langs/zh_CN/products.lang @@ -2,6 +2,7 @@ ProductRef=产品编号 ProductLabel=产品名称 ProductLabelTranslated=产品标签已翻译 +ProductDescription=Product description ProductDescriptionTranslated=产品描述已翻译 ProductNoteTranslated=产品备注已翻译 ProductServiceCard=产品/服务 信息卡 diff --git a/htdocs/langs/zh_CN/stripe.lang b/htdocs/langs/zh_CN/stripe.lang index d239c1fb8bd..c884648b05d 100644 --- a/htdocs/langs/zh_CN/stripe.lang +++ b/htdocs/langs/zh_CN/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/zh_CN/withdrawals.lang b/htdocs/langs/zh_CN/withdrawals.lang index 83c38178b4b..1ccec37cfe1 100644 --- a/htdocs/langs/zh_CN/withdrawals.lang +++ b/htdocs/langs/zh_CN/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=撤回文件 SetToStatusSent=设置状态“发送的文件” ThisWillAlsoAddPaymentOnInvoice=这还将记录付款到发票,并将其分类为“付费”,如果仍然支付是空的 StatisticsByLineStatus=按状态明细统计 -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=唯一授权参考 RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=直接付款模式(FRST或RECUR) diff --git a/htdocs/langs/zh_TW/accountancy.lang b/htdocs/langs/zh_TW/accountancy.lang index 97893293e5c..17dcd2accc4 100644 --- a/htdocs/langs/zh_TW/accountancy.lang +++ b/htdocs/langs/zh_TW/accountancy.lang @@ -265,7 +265,7 @@ AccountingJournals=各式會計日記簿 AccountingJournal=會計日記簿 NewAccountingJournal=新會計日記簿 ShowAccoutingJournal=顯示會計日記簿 -Nature=性質 +NatureOfJournal=Nature of Journal AccountingJournalType1=雜項操作 AccountingJournalType2=各式銷貨 AccountingJournalType3=各式採購 @@ -291,6 +291,7 @@ Modelcsv_quadratus=Export for Quadratus QuadraCompta Modelcsv_ebp=Export for EBP Modelcsv_cogilog=Export for Cogilog Modelcsv_agiris=Export for Agiris +Modelcsv_LDCompta=Export for LD Compta (v9 & higher) (Test) Modelcsv_openconcerto=Export for OpenConcerto (Test) Modelcsv_configurable=Export CSV Configurable Modelcsv_FEC=Export FEC @@ -301,7 +302,7 @@ ChartofaccountsId=會計項目表ID InitAccountancy=初始會計 InitAccountancyDesc=此頁可在沒有定義產品及服務的銷售及採購會計項目下使用產品及服務的會計項目。 DefaultBindingDesc=當沒有設定特定會計項目時,此頁面可設定預設會計項目連結到薪資、捐贈、稅捐及營業稅的交易紀錄。 -DefaultClosureDesc=This page can be used to set parameters to use to enclose a balance sheet. +DefaultClosureDesc=This page can be used to set parameters used for accounting closures. Options=選項 OptionModeProductSell=銷售模式 OptionModeProductSellIntra=Mode sales exported in EEC diff --git a/htdocs/langs/zh_TW/admin.lang b/htdocs/langs/zh_TW/admin.lang index 107124b2198..765fa63ea45 100644 --- a/htdocs/langs/zh_TW/admin.lang +++ b/htdocs/langs/zh_TW/admin.lang @@ -574,7 +574,7 @@ Module510Name=Salaries Module510Desc=Record and track employee payments Module520Name=Loans Module520Desc=借款的管理 -Module600Name=通知 +Module600Name=Notifications on business event Module600Desc=Send email notifications triggered by a business event: per user (setup defined on each user), per third-party contacts (setup defined on each third party) or by specific emails Module600Long=Note that this module sends emails in real-time when a specific business event occurs. If you are looking for a feature to send email reminders for agenda events, go into the setup of module Agenda. Module610Name=產品變種 @@ -1193,6 +1193,7 @@ ExtraFieldsSupplierOrders=補充屬性(訂單) ExtraFieldsSupplierInvoices=補充屬性(發票) ExtraFieldsProject=補充屬性(專案) ExtraFieldsProjectTask=補充屬性(任務) +ExtraFieldsSalaries=Complementary attributes (salaries) ExtraFieldHasWrongValue=屬性 %s 有錯誤值。 AlphaNumOnlyLowerCharsAndNoSpace=只限字母數字和小寫字元且沒有空格 SendmailOptionNotComplete=警告,在某些Linux系統,從您的電子郵件發送電子郵件,必須包含 sendmail 的執行設置選項 -ba(在您的 php.ini 檔案設定參數 mail.force_extra_parameters )。如果收件人沒有收到電子郵件,嘗試編輯 mail.force_extra_parameters = -ba 這個PHP參數。 @@ -1220,13 +1221,14 @@ SuhosinSessionEncrypt=以 Suhosin 加密方式儲存連線階段 ConditionIsCurrently=目前情況 %s YouUseBestDriver=You use driver %s which is the best driver currently available. YouDoNotUseBestDriver=You use driver %s but driver %s is recommended. -NbOfProductIsLowerThanNoPb=You have only %s products/services in the database. This does not require any particular optimization. +NbOfObjectIsLowerThanNoPb=You have only %s %s in the database. This does not require any particular optimization. SearchOptim=最佳化的蒐尋 -YouHaveXProductUseSearchOptim=You have %s products in the database. You should add the constant PRODUCT_DONOTSEARCH_ANYWHERE to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectUseSearchOptim=You have %s %s in the database. You should add the constant %s to 1 in Home-Setup-Other. Limit the search to the beginning of strings which makes it possible for the database to use indexes and you should get an immediate response. +YouHaveXObjectAndSearchOptimOn=You have %s %s in the database and constant %s is set to 1 in Home-Setup-Other. BrowserIsOK=You are using the %s web browser. This browser is ok for security and performance. BrowserIsKO=You are using the %s web browser. This browser is known to be a bad choice for security, performance and reliability. We recommend using Firefox, Chrome, Opera or Safari. -XDebugInstalled=已載入 XDebug。 -XCacheInstalled=已載入 XCache。 +PHPModuleLoaded=PHP component %s is loaded +PreloadOPCode=Preloaded OPCode is used AddRefInList=Display Customer/Vendor ref. info list (select list or combobox) and most of hyperlink.
Third Parties will appear with a name format of "CC12345 - SC45678 - The Big Company corp." instead of "The Big Company corp". AddAdressInList=Display Customer/Vendor adress info list (select list or combobox)
Third Parties will appear with a name format of "The Big Company corp. - 21 jump street 123456 Big town - USA" instead of "The Big Company corp". AskForPreferredShippingMethod=Ask for preferred shipping method for Third Parties. @@ -1734,9 +1736,9 @@ ExpenseReportsRulesSetup=設定費用報表模組 - 規則 ExpenseReportNumberingModules=費用報表編號模組 NoModueToManageStockIncrease=當自動增加庫存啟動後沒有模組可以管理。此時增加庫存只能人工輸入。 YouMayFindNotificationsFeaturesIntoModuleNotification=You may find options for email notifications by enabling and configuring the module "Notification". -ListOfNotificationsPerUser=每位用戶* 的通知明細表 -ListOfNotificationsPerUserOrContact=List of notifications (events) available per user* or per contact** -ListOfFixedNotifications=List of Fixed Notifications +ListOfNotificationsPerUser=List of automatic notifications per user* +ListOfNotificationsPerUserOrContact=List of possible automatic notifications (on business event) available per user* or per contact** +ListOfFixedNotifications=List of automatic fixed notifications GoOntoUserCardToAddMore=Go to the tab "Notifications" of a user to add or remove notifications for users GoOntoContactCardToAddMore=移到合作方的「通知」分頁以便針對通訊錄/地址等增加或移除通知 Threshold=Threshold @@ -1898,6 +1900,11 @@ OnMobileOnly=只在小螢幕(智慧型手機) DisableProspectCustomerType=Disable the "Prospect + Customer" third party type (so third party must be Prospect or Customer but can't be both) MAIN_OPTIMIZEFORTEXTBROWSER=Simplify interface for blind person MAIN_OPTIMIZEFORTEXTBROWSERDesc=Enable this option if you are a blind person, or if you use the application from a text browser like Lynx or Links. +MAIN_OPTIMIZEFORCOLORBLIND=Change interface's color for color blind person +MAIN_OPTIMIZEFORCOLORBLINDDesc=Enable this option if you are a color blind person, in some case interface will change color setup to increase contrast. +Protanopia=Protanopia +Deuteranopes=Deuteranopes +Tritanopes=Tritanopes ThisValueCanOverwrittenOnUserLevel=This value can be overwritten by each user from its user page - tab '%s' DefaultCustomerType=Default thirdparty type for "New customer" creation form ABankAccountMustBeDefinedOnPaymentModeSetup=Note: The bank account must be defined on the module of each payment mode (Paypal, Stripe, ...) to have this feature working. @@ -1911,7 +1918,7 @@ LogsLinesNumber=Number of lines to show on logs tab UseDebugBar=Use the debug bar DEBUGBAR_LOGS_LINES_NUMBER=Number of last log lines to keep in console WarningValueHigherSlowsDramaticalyOutput=Warning, higher values slows dramaticaly output -DebugBarModuleActivated=Module debugbar is activated and slows dramaticaly the interface +ModuleActivated=Module %s is activated and slows the interface EXPORTS_SHARE_MODELS=Export models are share with everybody ExportSetup=Setup of module Export InstanceUniqueID=Unique ID of the instance @@ -1928,3 +1935,5 @@ YouWillFindItOnYourIFTTTAccount=You will find it on your IFTTT account EndPointFor=End point for %s : %s DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? +RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value +AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined diff --git a/htdocs/langs/zh_TW/bills.lang b/htdocs/langs/zh_TW/bills.lang index c4f511537f2..1c4ba30453c 100644 --- a/htdocs/langs/zh_TW/bills.lang +++ b/htdocs/langs/zh_TW/bills.lang @@ -95,6 +95,7 @@ PaymentHigherThanReminderToPay=付款支付更高的比提醒 HelpPaymentHigherThanReminderToPay=注意,一張或多張帳單的付款金額高於未付金額。
編輯您的輸入,否則請確認並考慮為每張超額支付的發票建立貸方通知單。 HelpPaymentHigherThanReminderToPaySupplier=注意,一張或多張帳單的付款金額高於未付金額。
編輯您的輸入,否則請確認並考慮為每張超額支付的發票建立貸方通知單。 ClassifyPaid=分類'已付' +ClassifyUnPaid=Classify 'Unpaid' ClassifyPaidPartially=分類'部分支付' ClassifyCanceled=分類'已放棄' ClassifyClosed=分類'關閉' @@ -214,6 +215,20 @@ ShowInvoiceReplace=顯示發票取代 ShowInvoiceAvoir=顯示信貸說明 ShowInvoiceDeposit=顯示訂金發票 ShowInvoiceSituation=顯示情境發票 +UseSituationInvoices=Allow situation invoice +UseSituationInvoicesCreditNote=Allow situation invoice credit note +Retainedwarranty=Retained warranty +RetainedwarrantyDefaultPercent=Retained warranty default percent +ToPayOn=To pay on %s +toPayOn=to pay on %s +RetainedWarranty=Retained Warranty +PaymentConditionsShortRetainedWarranty=Retained warranty payment terms +DefaultPaymentConditionsRetainedWarranty=Default retained warranty payment terms +setPaymentConditionsShortRetainedWarranty=Set retained warranty payment terms +setretainedwarranty=Set retained warranty +setretainedwarrantyDateLimit=Set retained warranty date limit +RetainedWarrantyDateLimit=Retained warranty date limit +RetainedWarrantyNeed100Percent=The situation invoice need to be at 100%% progress to be displayed on PDF ShowPayment=顯示支付 AlreadyPaid=已支付 AlreadyPaidBack=已經還清了 diff --git a/htdocs/langs/zh_TW/errors.lang b/htdocs/langs/zh_TW/errors.lang index 5c767727593..f2d908bd98f 100644 --- a/htdocs/langs/zh_TW/errors.lang +++ b/htdocs/langs/zh_TW/errors.lang @@ -90,7 +90,7 @@ ErrorSpecialCharNotAllowedForField=特殊字符不為外地允許“%s的” ErrorNumRefModel=存在一個引用(%s)和編號是不符合本規則兼容到數據庫。記錄中刪除或重命名參考激活此模塊。 ErrorQtyTooLowForThisSupplier=Quantity too low for this vendor or no price defined on this product for this vendor ErrorOrdersNotCreatedQtyTooLow=Some orders haven't been created because of too-low quantities -ErrorModuleSetupNotComplete=Setup of module looks to be uncomplete. Go on Home - Setup - Modules to complete. +ErrorModuleSetupNotComplete=Setup of module %s looks to be uncomplete. Go on Home - Setup - Modules to complete. ErrorBadMask=錯誤的遮罩參數值 ErrorBadMaskFailedToLocatePosOfSequence=沒有序列號錯誤,面具 ErrorBadMaskBadRazMonth=錯誤,壞的復位值 @@ -219,6 +219,7 @@ ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. # Warnings +WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. WarningMandatorySetupNotComplete=Click here to setup mandatory parameters WarningEnableYourModulesApplications=Click here to enable your modules and applications diff --git a/htdocs/langs/zh_TW/main.lang b/htdocs/langs/zh_TW/main.lang index 3786469cafd..6a3d99b8b94 100644 --- a/htdocs/langs/zh_TW/main.lang +++ b/htdocs/langs/zh_TW/main.lang @@ -445,6 +445,7 @@ ContactsAddressesForCompany=此合作方的通訊錄及地址 AddressesForCompany=此合作方的地址 ActionsOnCompany=Events for this third party ActionsOnContact=Events for this contact/address +ActionsOnContract=Events for this contract ActionsOnMember=此會員的各種事件 ActionsOnProduct=此產品的各種事件 NActionsLate=%s的後期 @@ -759,6 +760,7 @@ LinkToSupplierProposal=Link to vendor proposal LinkToSupplierInvoice=Link to vendor invoice LinkToContract=連線到合約 LinkToIntervention=連線到干預 +LinkToTicket=Link to ticket CreateDraft=建立草稿 SetToDraft=回到草稿 ClickToEdit=點擊後“編輯” diff --git a/htdocs/langs/zh_TW/products.lang b/htdocs/langs/zh_TW/products.lang index 0379739b18f..660da6b3998 100644 --- a/htdocs/langs/zh_TW/products.lang +++ b/htdocs/langs/zh_TW/products.lang @@ -2,6 +2,7 @@ ProductRef=產品編號 ProductLabel=產品標簽 ProductLabelTranslated=Translated product label +ProductDescription=Product description ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=產品服務卡 diff --git a/htdocs/langs/zh_TW/stripe.lang b/htdocs/langs/zh_TW/stripe.lang index a390881159f..b442a09dbdd 100644 --- a/htdocs/langs/zh_TW/stripe.lang +++ b/htdocs/langs/zh_TW/stripe.lang @@ -65,3 +65,5 @@ StripeUserAccountForActions=User account to use for email notification of some S StripePayoutList=List of Stripe payouts ToOfferALinkForTestWebhook=Link to setup Stripe WebHook to call the IPN (test mode) ToOfferALinkForLiveWebhook=Link to setup Stripe WebHook to call the IPN (live mode) +PaymentWillBeRecordedForNextPeriod=Payment will be recorded for the next period. +ClickHereToTryAgain=Click here to try again... diff --git a/htdocs/langs/zh_TW/withdrawals.lang b/htdocs/langs/zh_TW/withdrawals.lang index e9dcf33924b..a908610c4f0 100644 --- a/htdocs/langs/zh_TW/withdrawals.lang +++ b/htdocs/langs/zh_TW/withdrawals.lang @@ -76,7 +76,8 @@ WithdrawalFile=Withdrawal file SetToStatusSent=Set to status "File Sent" ThisWillAlsoAddPaymentOnInvoice=This will also record payments to invoices and will classify them as "Paid" if remain to pay is null StatisticsByLineStatus=Statistics by status of lines -RUM=UMR +RUM=Unique Mandate Reference (UMR) +DateRUM=Mandate signature date RUMLong=Unique Mandate Reference RUMWillBeGenerated=If empty, a UMR (Unique Mandate Reference) will be generated once the bank account information is saved. WithdrawMode=Direct debit mode (FRST or RECUR) From ac57e527ce5e26a62abaa57ee634e27af6153ea2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 19:01:23 +0200 Subject: [PATCH 113/228] Fix translation --- htdocs/website/index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 76d063393f8..1a7a07ba18d 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -2799,7 +2799,7 @@ if ($action == 'editmeta' || $action == 'createcontainer') if ($action != 'createcontainer') { print ''; - print $langs->trans('LastModificationAuthor'); + print $langs->trans('UserModif'); print ''; if ($pageusermodifid > 0) { From d00f3c9685aedd5dfaaf3a68fe4cc76cd12f7d09 Mon Sep 17 00:00:00 2001 From: JC Prieto Date: Mon, 12 Aug 2019 20:07:24 +0200 Subject: [PATCH 114/228] Update chargesociales.class.php --- htdocs/compta/sociales/class/chargesociales.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/compta/sociales/class/chargesociales.class.php b/htdocs/compta/sociales/class/chargesociales.class.php index c0aac835bba..05169adcf7b 100644 --- a/htdocs/compta/sociales/class/chargesociales.class.php +++ b/htdocs/compta/sociales/class/chargesociales.class.php @@ -317,7 +317,7 @@ class ChargeSociales extends CommonObject $sql.= ", date_ech='".$this->db->idate($this->date_ech)."'"; $sql.= ", periode='".$this->db->idate($this->periode)."'"; $sql.= ", amount='".price2num($this->amount, 'MT')."'"; - $sql.= ", fk_projet='".($this->fk_project > 0 ? $this->db->escape($this->fk_project) : NULL)."'"; + $sql.= ", fk_projet='".($this->fk_project > 0 ? $this->db->escape($this->fk_project) : null)."'"; $sql.= ", fk_user_modif=".$user->id; $sql.= " WHERE rowid=".$this->id; From c986dbc71fde8a4a24adc4e4b7059088046fd68e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 20:32:18 +0200 Subject: [PATCH 115/228] NEW Add search into template --- htdocs/core/lib/website.lib.php | 79 ++++++++++++++++++++++++++++++++- 1 file changed, 77 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 135a09cd803..78da87a8fe4 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -452,8 +452,6 @@ function includeContainer($containerref) function getStructuredData($type, $data = array()) { global $conf, $db, $hookmanager, $langs, $mysoc, $user, $website, $websitepage, $weblangs; // Very important. Required to have var available when running inluded containers. - global $includehtmlcontentopened; - global $websitekey, $websitepagefile; if ($type == 'software') { @@ -561,6 +559,83 @@ function getStructuredData($type, $data = array()) return $ret; } +/** + * Return list of containers object that match a criteria + * + * @param string $type Type of container to search into (Example: 'page') + * @param string $algo Algorithm used for search (Example: 'meta' is searching into meta information like title and description, 'metacontent') + * @param string $searchstring Search string + * @param int $max Max number of answers + * @return string HTML content + */ +function getPagesFromSearchCriterias($type, $algo, $searchstring, $max = 25) +{ + global $conf, $db, $hookmanager, $langs, $mysoc, $user, $website, $websitepage, $weblangs; // Very important. Required to have var available when running inluded containers. + + $error = 0; + $arrayresult = array('code'=>'', 'list'=>array()); + + if (empty($searchstring)) + { + $error++; + $arrayresult['code']='KO'; + $arrayresult['message']=$weblangs->trans("EmptySearchString"); + } + elseif (dol_strlen($searchstring) < 2) + { + $error++; + $arrayresult['code']='KO'; + $arrayresult['message']=$weblangs->trans("SearchCriteriaTooSmall"); + } + elseif (! in_array($type, array('page'))) + { + $error++; + $arrayresult['code']='KO'; + $arrayresult['message']='Bad value for parameter $type'; + } + + if (! $error && in_array($algo, array('meta', 'metacontent'))) + { + $sql = 'SELECT rowid FROM '.MAIN_DB_PREFIX.'website_page'; + $sql.= " WHERE fk_website = ".$website->id." AND type_container = '".$db->escape($type)."'"; + $sql.= " AND (title LIKE '%".$db->escape($searchstring)."%' OR description LIKE '%".$db->escape($searchstring)."%'"; + if ($algo == 'metacontent') $sql.= " OR content LIKE '%".$db->escape($searchstring)."%'"; + $sql.= " OR keywords LIKE '".$db->escape($searchstring).",%' OR keywords LIKE '% ".$db->escape($searchstring)."%')"; // TODO Use a better way to scan keywords + $sql.= $db->plimit($max); + + $resql = $db->query($sql); + if ($resql) + { + $i = 0; + while (($obj = $db->fetch_object($resql)) && ($i < $max || $max == 0)) + { + if ($obj->rowid > 0) + { + $tmpwebsitepage = new WebsitePage($db); + $tmpwebsitepage->fetch($obj->rowid); + if ($tmpwebsitepage->id > 0) $arrayresult['list'][]=$tmpwebsitepage; + } + $i++; + } + + $arrayresult['code']='OK'; + if (empty($arrayresult['list'])) + { + $arrayresult['code']='KO'; + $arrayresult['message']=$weblangs->trans("NothingFound"); + } + } + else + { + $error++; + $arrayresult['code']=$db->lasterrno(); + $arrayresult['message']=$db->lasterror(); + } + } + + return $arrayresult; +} + /** * Download all images found into page content $tmp. * If $modifylinks is set, links to images will be replace with a link to viewimage wrapper. From 8ad2081555c0616f07cb3fe9dafed817dcf74950 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Aug 2019 22:19:24 +0200 Subject: [PATCH 116/228] NEW Can select website templates from available default templates --- ChangeLog | 2 +- htdocs/admin/ihm.php | 4 +- htdocs/core/lib/files.lib.php | 7 + htdocs/core/lib/usergroups.lib.php | 33 +- htdocs/core/lib/website.lib.php | 312 +------------ htdocs/core/lib/website2.lib.php | 430 ++++++++++++++++++ .../websites/website-template-corporate.jpg | Bin 0 -> 94744 bytes htdocs/langs/en_US/main.lang | 1 + htdocs/langs/en_US/website.lang | 5 +- htdocs/user/param_ihm.php | 4 +- htdocs/viewimage.php | 2 +- htdocs/website/index.php | 62 ++- 12 files changed, 504 insertions(+), 358 deletions(-) create mode 100644 htdocs/core/lib/website2.lib.php create mode 100644 htdocs/install/doctemplates/websites/website-template-corporate.jpg diff --git a/ChangeLog b/ChangeLog index cb4ad0c3982..0839fd77e95 100644 --- a/ChangeLog +++ b/ChangeLog @@ -15,7 +15,7 @@ WARNING: Following changes may create regressions for some external modules, but were necessary to make Dolibarr better: * Properties ->libelle_incoterms were renamed into ->label_incoterms * Removed the method liste_array() of project class. It was not used by core code. - +* The function show_theme() hase been renamed into showSkins() ***** ChangeLog for 10.0.1 compared to 10.0.0 ***** diff --git a/htdocs/admin/ihm.php b/htdocs/admin/ihm.php index 509a04494d2..37c997ee306 100644 --- a/htdocs/admin/ihm.php +++ b/htdocs/admin/ihm.php @@ -259,7 +259,7 @@ if ($action == 'edit') // Edit print '
'."\n"; // Themes and themes options - show_theme(null, 1); + showSkins(null, 1); print '
'; // Other @@ -464,7 +464,7 @@ else // Show // Themes - show_theme(null, 0); + showSkins(null, 0); print '
'; diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index e126ff2b7f0..92b739b3190 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -555,6 +555,7 @@ function dol_count_nb_of_line($file) * * @param string $pathoffile Path of file * @return integer File size + * @see dol_print_size() */ function dol_filesize($pathoffile) { @@ -2164,6 +2165,12 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, $accessallowed=($user->admin && basename($original_file) == $original_file && preg_match('/^dolibarr.*\.log$/', basename($original_file))); $original_file=$dolibarr_main_data_root.'/'.$original_file; } + // Wrapping for *.log files, like when used with url http://.../document.php?modulepart=logs&file=dolibarr.log + elseif ($modulepart == 'doctemplateswebsite' && !empty($dolibarr_main_data_root)) + { + $accessallowed=($fuser->rights->website->write && preg_match('/\.jpg$/i', basename($original_file))); + $original_file=$dolibarr_main_data_root.'/doctemplates/websites/'.$original_file; + } // Wrapping for *.zip files, like when used with url http://.../document.php?modulepart=packages&file=module_myfile.zip elseif ($modulepart == 'packages' && !empty($dolibarr_main_data_root)) { diff --git a/htdocs/core/lib/usergroups.lib.php b/htdocs/core/lib/usergroups.lib.php index ea7f9856509..81e9c8dea73 100644 --- a/htdocs/core/lib/usergroups.lib.php +++ b/htdocs/core/lib/usergroups.lib.php @@ -295,10 +295,9 @@ function user_admin_prepare_head() * @param boolean $foruserprofile Show for user profile view * @return void */ -function show_theme($fuser, $edit = 0, $foruserprofile = false) +function showSkins($fuser, $edit = 0, $foruserprofile = false) { global $conf,$langs,$db,$form; - global $bc; require_once DOL_DOCUMENT_ROOT . '/core/class/html.formother.class.php'; @@ -351,9 +350,7 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) { print ''.$langs->trans("DefaultSkin").''; print ''; - $url='https://www.dolistore.com/lang-en/4-skins'; - if (preg_match('/fr/i', $langs->defaultlang)) $url='https://www.dolistore.com/fr/4-themes'; - //if (preg_match('/es/i',$langs->defaultlang)) $url='http://www.dolistore.com/lang-es/4-themes'; + $url='https://www.dolistore.com/4-skins'; print ''; print $langs->trans('DownloadMoreSkins'); print ''; @@ -432,7 +429,7 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) print ''; print ''.$langs->trans("TopMenuDisableImages").''; print ''.($conf->global->THEME_TOPMENU_DISABLE_IMAGE?$conf->global->THEME_TOPMENU_DISABLE_IMAGE:$langs->trans("Default")).''; - print 'conf->THEME_ELDY_TEXTLINK)?" checked":""); + print 'conf->THEME_ELDY_TEXTLINK)?" checked":""); print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo print '> '.$langs->trans("UsePersonalValue").''; print ''; @@ -477,7 +474,7 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) print ''; print ''.$langs->trans("TopMenuBackgroundColor").''; print ''.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_TOPMENU_BACK1:$langs->trans("Default")).''; - print 'conf->THEME_ELDY_TOPMENU_BACK1)?" checked":""); + print 'conf->THEME_ELDY_TOPMENU_BACK1)?" checked":""); print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo print '> '.$langs->trans("UsePersonalValue").''; print ''; @@ -524,7 +521,7 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) print ''; print ''.$langs->trans("TopMenuBackgroundColor").''; print ''.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_TOPMENU_BACK1:$langs->trans("Default")).''; - print 'conf->THEME_ELDY_TOPMENU_BACK1)?" checked":""); + print 'conf->THEME_ELDY_TOPMENU_BACK1)?" checked":""); print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo print '> '.$langs->trans("UsePersonalValue").''; print ''; @@ -573,7 +570,7 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) print ''; print ''.$langs->trans("TopMenuBackgroundColor").''; print ''.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_VERMENU_BACK1:$langs->trans("Default")).''; - print 'conf->THEME_ELDY_TOPMENU_BACK1)?" checked":""); + print 'conf->THEME_ELDY_TOPMENU_BACK1)?" checked":""); print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo print '> '.$langs->trans("UsePersonalValue").''; print ''; @@ -763,7 +760,7 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) print ''; print ''.$langs->trans("TopMenuBackgroundColor").''; print ''.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_TEXTLINK:$langs->trans("Default")).''; - print 'conf->THEME_ELDY_TEXTLINK)?" checked":""); + print 'conf->THEME_ELDY_TEXTLINK)?" checked":""); print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo print '> '.$langs->trans("UsePersonalValue").''; print ''; @@ -813,9 +810,9 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) /* Must first change option to choose color of highlight instead of yes or no. print ''; print ''.$langs->trans("HighlightLinesOnMouseHover").''; - print 'global->THEME_ELDY_USE_HOVER?" checked":"").'>'; - print ' '.$langs->trans("UsePersonalValue").''; - print ''; + print 'global->THEME_ELDY_USE_HOVER?" checked":"").'>'; + print ' '.$langs->trans("UsePersonalValue").''; + print ''; print '   ('.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; print ''; print ''; @@ -825,7 +822,7 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) print ''; print ''.$langs->trans("HighlightLinesColor").''; print ''; - //print ''; + //print ''; //print '   ('.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; if ($edit) { @@ -856,9 +853,9 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) /* Must first change option to choose color of highlight instead of yes or no. print ''; print ''.$langs->trans("HighlightLinesOnMouseHover").''; - print 'global->THEME_ELDY_USE_HOVER?" checked":"").'>'; - print ' '.$langs->trans("UsePersonalValue").''; - print ''; + print 'global->THEME_ELDY_USE_HOVER?" checked":"").'>'; + print ' '.$langs->trans("UsePersonalValue").''; + print ''; print '   ('.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; print ''; print ''; @@ -869,7 +866,7 @@ function show_theme($fuser, $edit = 0, $foruserprofile = false) print ''; print ''.$langs->trans("HighlightLinesChecked").''; print ''; - //print ''; + //print ''; //print '   ('.$langs->trans("NotSupportedByAllThemes").', '.$langs->trans("PressF5AfterChangingThis").')'; if ($edit) { diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 78da87a8fe4..e9507b8556d 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -622,7 +622,7 @@ function getPagesFromSearchCriterias($type, $algo, $searchstring, $max = 25) if (empty($arrayresult['list'])) { $arrayresult['code']='KO'; - $arrayresult['message']=$weblangs->trans("NothingFound"); + $arrayresult['message']=$weblangs->trans("NoRecordFound"); } } else @@ -819,313 +819,3 @@ function getAllImages($object, $objectpage, $urltograb, &$tmp, &$action, $modify } } } - - - -/** - * Save content of a page on disk - * - * @param string $filemaster Full path of filename master.inc.php for website to generate - * @return boolean True if OK - */ -function dolSaveMasterFile($filemaster) -{ - global $conf; - - // Now generate the master.inc.php page - dol_syslog("We regenerate the master file"); - dol_delete_file($filemaster); - - $mastercontent = ''."\n"; - $result = file_put_contents($filemaster, $mastercontent); - if (! empty($conf->global->MAIN_UMASK)) - @chmod($filemaster, octdec($conf->global->MAIN_UMASK)); - - return $result; -} - -/** - * Save content of a page on disk - * - * @param string $filealias Full path of filename to generate - * @param Website $object Object website - * @param WebsitePage $objectpage Object websitepage - * @return boolean True if OK - */ -function dolSavePageAlias($filealias, $object, $objectpage) -{ - global $conf; - - // Now create the .tpl file (duplicate code with actions updatesource or updatecontent but we need this to save new header) - dol_syslog("We regenerate the alias page filealias=".$filealias); - - $aliascontent = 'id.'.tpl.php\'; '; - $aliascontent.= 'else require $dolibarr_main_data_root.\'/website/\'.$website->ref.\'/page'.$objectpage->id.'.tpl.php\';'."\n"; - $aliascontent.= '?>'."\n"; - $result = file_put_contents($filealias, $aliascontent); - if (! empty($conf->global->MAIN_UMASK)) { - @chmod($filealias, octdec($conf->global->MAIN_UMASK)); - } - - return ($result?true:false); -} - - -/** - * Save content of a page on disk - * - * @param string $filetpl Full path of filename to generate - * @param Website $object Object website - * @param WebsitePage $objectpage Object websitepage - * @return boolean True if OK - */ -function dolSavePageContent($filetpl, $object, $objectpage) -{ - global $conf; - - // Now create the .tpl file (duplicate code with actions updatesource or updatecontent but we need this to save new header) - dol_syslog("We regenerate the tpl page filetpl=".$filetpl); - - dol_delete_file($filetpl); - - $shortlangcode = ''; - if ($objectpage->lang) $shortlangcode=preg_replace('/[_-].*$/', '', $objectpage->lang); // en_US or en-US -> en - - $tplcontent =''; - $tplcontent.= "\n"; - if (! empty($conf->global->WEBSITE_FORCE_DOCTYPE_HTML5)) - { - $tplcontent.= "\n"; - } - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''.dol_string_nohtmltag($objectpage->title, 0, 'UTF-8').''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= '/ims\', \'\', file_get_contents(DOL_DATA_ROOT."/website/".$websitekey."/htmlheader.html")); ?>'."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= preg_replace('/<\/?html>/ims', '', $objectpage->htmlheader)."\n"; - $tplcontent.= ''."\n"; - - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= $objectpage->content."\n"; - $tplcontent.= ''."\n"; - $tplcontent.= ''."\n"; - - $tplcontent.= '"."\n"; - - //var_dump($filetpl);exit; - $result = file_put_contents($filetpl, $tplcontent); - if (! empty($conf->global->MAIN_UMASK)) - @chmod($filetpl, octdec($conf->global->MAIN_UMASK)); - - return $result; -} - - -/** - * Save content of the index.php and wrapper.php page - * - * @param string $pathofwebsite Path of website root - * @param string $fileindex Full path of file index.php - * @param string $filetpl File tpl to index.php page redirect to - * @param string $filewrapper Full path of file wrapper.php - * @return boolean True if OK - */ -function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl, $filewrapper) -{ - global $conf; - - $result1=false; - $result2=false; - - dol_mkdir($pathofwebsite); - - dol_delete_file($fileindex); - $indexcontent = ''."\n"; - $result1 = file_put_contents($fileindex, $indexcontent); - if (! empty($conf->global->MAIN_UMASK)) - @chmod($fileindex, octdec($conf->global->MAIN_UMASK)); - - dol_delete_file($filewrapper); - - $wrappercontent=file_get_contents(DOL_DOCUMENT_ROOT.'/website/samples/wrapper.html'); - - $result2 = file_put_contents($filewrapper, $wrappercontent); - if (! empty($conf->global->MAIN_UMASK)) - @chmod($filewrapper, octdec($conf->global->MAIN_UMASK)); - - return ($result1 && $result2); -} - - -/** - * Save content of a page on disk - * - * @param string $filehtmlheader Full path of filename to generate - * @param string $htmlheadercontent Content of file - * @return boolean True if OK - */ -function dolSaveHtmlHeader($filehtmlheader, $htmlheadercontent) -{ - global $conf, $pathofwebsite; - - dol_syslog("Save html header into ".$filehtmlheader); - - dol_mkdir($pathofwebsite); - $result = file_put_contents($filehtmlheader, $htmlheadercontent); - if (! empty($conf->global->MAIN_UMASK)) - @chmod($filehtmlheader, octdec($conf->global->MAIN_UMASK)); - - if (! $result) - { - setEventMessages('Failed to write file '.$filehtmlheader, null, 'errors'); - return false; - } - - return true; -} - -/** - * Save content of a page on disk - * - * @param string $filecss Full path of filename to generate - * @param string $csscontent Content of file - * @return boolean True if OK - */ -function dolSaveCssFile($filecss, $csscontent) -{ - global $conf, $pathofwebsite; - - dol_syslog("Save css file into ".$filecss); - - dol_mkdir($pathofwebsite); - $result = file_put_contents($filecss, $csscontent); - if (! empty($conf->global->MAIN_UMASK)) - @chmod($filecss, octdec($conf->global->MAIN_UMASK)); - - if (! $result) - { - setEventMessages('Failed to write file '.$filecss, null, 'errors'); - return false; - } - - return true; -} - -/** - * Save content of a page on disk - * - * @param string $filejs Full path of filename to generate - * @param string $jscontent Content of file - * @return boolean True if OK - */ -function dolSaveJsFile($filejs, $jscontent) -{ - global $conf, $pathofwebsite; - - dol_syslog("Save js file into ".$filejs); - - dol_mkdir($pathofwebsite); - $result = file_put_contents($filejs, $jscontent); - if (! empty($conf->global->MAIN_UMASK)) - @chmod($filejs, octdec($conf->global->MAIN_UMASK)); - - if (! $result) - { - setEventMessages('Failed to write file '.$filejs, null, 'errors'); - return false; - } - - return true; -} - -/** - * Save content of a page on disk - * - * @param string $filerobot Full path of filename to generate - * @param string $robotcontent Content of file - * @return boolean True if OK - */ -function dolSaveRobotFile($filerobot, $robotcontent) -{ - global $conf, $pathofwebsite; - - dol_syslog("Save robot file into ".$filerobot); - - dol_mkdir($pathofwebsite); - $result = file_put_contents($filerobot, $robotcontent); - if (! empty($conf->global->MAIN_UMASK)) - @chmod($filerobot, octdec($conf->global->MAIN_UMASK)); - - if (! $result) - { - setEventMessages('Failed to write file '.$filerobot, null, 'errors'); - return false; - } - - return true; -} - -/** - * Save content of a page on disk - * - * @param string $filehtaccess Full path of filename to generate - * @param string $htaccess Content of file - * @return boolean True if OK - */ -function dolSaveHtaccessFile($filehtaccess, $htaccess) -{ - global $conf, $pathofwebsite; - - dol_syslog("Save htaccess file into ".$filehtaccess); - - dol_mkdir($pathofwebsite); - $result = file_put_contents($filehtaccess, $htaccess); - if (! empty($conf->global->MAIN_UMASK)) - @chmod($filehtaccess, octdec($conf->global->MAIN_UMASK)); - - if (! $result) - { - setEventMessages('Failed to write file '.$filehtaccess, null, 'errors'); - return false; - } - - return true; -} diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php new file mode 100644 index 00000000000..903b8a8d144 --- /dev/null +++ b/htdocs/core/lib/website2.lib.php @@ -0,0 +1,430 @@ + + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/** + * \file htdocs/core/lib/website2.lib.php + * \ingroup website + * \brief Library for website module (rare functions not required for execution of website) + */ + + + +/** + * Save content of a page on disk + * + * @param string $filemaster Full path of filename master.inc.php for website to generate + * @return boolean True if OK + */ +function dolSaveMasterFile($filemaster) +{ + global $conf; + + // Now generate the master.inc.php page + dol_syslog("We regenerate the master file"); + dol_delete_file($filemaster); + + $mastercontent = ''."\n"; + $result = file_put_contents($filemaster, $mastercontent); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($filemaster, octdec($conf->global->MAIN_UMASK)); + + return $result; +} + +/** + * Save content of a page on disk + * + * @param string $filealias Full path of filename to generate + * @param Website $object Object website + * @param WebsitePage $objectpage Object websitepage + * @return boolean True if OK + */ +function dolSavePageAlias($filealias, $object, $objectpage) +{ + global $conf; + + // Now create the .tpl file (duplicate code with actions updatesource or updatecontent but we need this to save new header) + dol_syslog("We regenerate the alias page filealias=".$filealias); + + $aliascontent = 'id.'.tpl.php\'; '; + $aliascontent.= 'else require $dolibarr_main_data_root.\'/website/\'.$website->ref.\'/page'.$objectpage->id.'.tpl.php\';'."\n"; + $aliascontent.= '?>'."\n"; + $result = file_put_contents($filealias, $aliascontent); + if (! empty($conf->global->MAIN_UMASK)) { + @chmod($filealias, octdec($conf->global->MAIN_UMASK)); + } + + return ($result?true:false); +} + + +/** + * Save content of a page on disk + * + * @param string $filetpl Full path of filename to generate + * @param Website $object Object website + * @param WebsitePage $objectpage Object websitepage + * @return boolean True if OK + */ +function dolSavePageContent($filetpl, $object, $objectpage) +{ + global $conf; + + // Now create the .tpl file (duplicate code with actions updatesource or updatecontent but we need this to save new header) + dol_syslog("We regenerate the tpl page filetpl=".$filetpl); + + dol_delete_file($filetpl); + + $shortlangcode = ''; + if ($objectpage->lang) $shortlangcode=preg_replace('/[_-].*$/', '', $objectpage->lang); // en_US or en-US -> en + + $tplcontent =''; + $tplcontent.= "\n"; + if (! empty($conf->global->WEBSITE_FORCE_DOCTYPE_HTML5)) + { + $tplcontent.= "\n"; + } + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''.dol_string_nohtmltag($objectpage->title, 0, 'UTF-8').''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= '/ims\', \'\', file_get_contents(DOL_DATA_ROOT."/website/".$websitekey."/htmlheader.html")); ?>'."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= preg_replace('/<\/?html>/ims', '', $objectpage->htmlheader)."\n"; + $tplcontent.= ''."\n"; + + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= $objectpage->content."\n"; + $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; + + $tplcontent.= '"."\n"; + + //var_dump($filetpl);exit; + $result = file_put_contents($filetpl, $tplcontent); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($filetpl, octdec($conf->global->MAIN_UMASK)); + + return $result; +} + + +/** + * Save content of the index.php and wrapper.php page + * + * @param string $pathofwebsite Path of website root + * @param string $fileindex Full path of file index.php + * @param string $filetpl File tpl to index.php page redirect to + * @param string $filewrapper Full path of file wrapper.php + * @return boolean True if OK + */ +function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl, $filewrapper) +{ + global $conf; + + $result1=false; + $result2=false; + + dol_mkdir($pathofwebsite); + + dol_delete_file($fileindex); + $indexcontent = ''."\n"; + $result1 = file_put_contents($fileindex, $indexcontent); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($fileindex, octdec($conf->global->MAIN_UMASK)); + + dol_delete_file($filewrapper); + + $wrappercontent=file_get_contents(DOL_DOCUMENT_ROOT.'/website/samples/wrapper.html'); + + $result2 = file_put_contents($filewrapper, $wrappercontent); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($filewrapper, octdec($conf->global->MAIN_UMASK)); + + return ($result1 && $result2); +} + + +/** + * Save content of a page on disk + * + * @param string $filehtmlheader Full path of filename to generate + * @param string $htmlheadercontent Content of file + * @return boolean True if OK + */ +function dolSaveHtmlHeader($filehtmlheader, $htmlheadercontent) +{ + global $conf, $pathofwebsite; + + dol_syslog("Save html header into ".$filehtmlheader); + + dol_mkdir($pathofwebsite); + $result = file_put_contents($filehtmlheader, $htmlheadercontent); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($filehtmlheader, octdec($conf->global->MAIN_UMASK)); + + if (! $result) + { + setEventMessages('Failed to write file '.$filehtmlheader, null, 'errors'); + return false; + } + + return true; +} + +/** + * Save content of a page on disk + * + * @param string $filecss Full path of filename to generate + * @param string $csscontent Content of file + * @return boolean True if OK + */ +function dolSaveCssFile($filecss, $csscontent) +{ + global $conf, $pathofwebsite; + + dol_syslog("Save css file into ".$filecss); + + dol_mkdir($pathofwebsite); + $result = file_put_contents($filecss, $csscontent); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($filecss, octdec($conf->global->MAIN_UMASK)); + + if (! $result) + { + setEventMessages('Failed to write file '.$filecss, null, 'errors'); + return false; + } + + return true; +} + +/** + * Save content of a page on disk + * + * @param string $filejs Full path of filename to generate + * @param string $jscontent Content of file + * @return boolean True if OK + */ +function dolSaveJsFile($filejs, $jscontent) +{ + global $conf, $pathofwebsite; + + dol_syslog("Save js file into ".$filejs); + + dol_mkdir($pathofwebsite); + $result = file_put_contents($filejs, $jscontent); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($filejs, octdec($conf->global->MAIN_UMASK)); + + if (! $result) + { + setEventMessages('Failed to write file '.$filejs, null, 'errors'); + return false; + } + + return true; +} + +/** + * Save content of a page on disk + * + * @param string $filerobot Full path of filename to generate + * @param string $robotcontent Content of file + * @return boolean True if OK + */ +function dolSaveRobotFile($filerobot, $robotcontent) +{ + global $conf, $pathofwebsite; + + dol_syslog("Save robot file into ".$filerobot); + + dol_mkdir($pathofwebsite); + $result = file_put_contents($filerobot, $robotcontent); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($filerobot, octdec($conf->global->MAIN_UMASK)); + + if (! $result) + { + setEventMessages('Failed to write file '.$filerobot, null, 'errors'); + return false; + } + + return true; +} + +/** + * Save content of a page on disk + * + * @param string $filehtaccess Full path of filename to generate + * @param string $htaccess Content of file + * @return boolean True if OK + */ +function dolSaveHtaccessFile($filehtaccess, $htaccess) +{ + global $conf, $pathofwebsite; + + dol_syslog("Save htaccess file into ".$filehtaccess); + + dol_mkdir($pathofwebsite); + $result = file_put_contents($filehtaccess, $htaccess); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($filehtaccess, octdec($conf->global->MAIN_UMASK)); + + if (! $result) + { + setEventMessages('Failed to write file '.$filehtaccess, null, 'errors'); + return false; + } + + return true; +} + + + +/** + * Show list of themes. Show all thumbs of themes + * + * @param Website $website Object website to load the tempalte into + * @return void + */ +function showWebsiteTemplates(Website $website) +{ + global $conf,$langs,$db,$form; + global $bc; + + $dirthemes=array('/doctemplates/websites'); + if (! empty($conf->modules_parts['websitetemplates'])) // Using this feature slow down application + { + foreach($conf->modules_parts['websitetemplates'] as $reldir) + { + $dirthemes=array_merge($dirthemes, (array) ($reldir.'doctemplates/websites')); + } + } + $dirthemes=array_unique($dirthemes); + // Now dir_themes=array('/themes') or dir_themes=array('/theme','/mymodule/theme') + + $colspan=2; + + $thumbsbyrow=6; + print ''; + + // Title + print ''; + print ''; + + print ''; + print ''; + print ''; + print ''; + + print ''; + print '
'; + $url='https://www.dolistore.com/43-web-site-templates'; + print ''; + print $langs->trans('DownloadMoreSkins'); + print ''; + print '
'.$langs->trans("ThemeDir").''; + foreach($dirthemes as $dirtheme) + { + echo '"'.$dirtheme.'" '; + } + print '
'; + + print '
'; + + $i=0; + foreach($dirthemes as $dir) + { + //print $dirroot.$dir;exit; + $dirtheme=DOL_DATA_ROOT.$dir; // This include loop on $conf->file->dol_document_root + if (is_dir($dirtheme)) + { + $handle=opendir($dirtheme); + if (is_resource($handle)) + { + while (($subdir = readdir($handle))!==false) + { + if (is_file($dirtheme."/".$subdir) && substr($subdir, 0, 1) <> '.' + && substr($subdir, 0, 3) <> 'CVS' && preg_match('/\.zip$/i', $subdir)) + { + $subdirwithoutzip = preg_replace('/\.zip$/i', '', $subdir); + + // Disable not stable themes (dir ends with _exp or _dev) + if ($conf->global->MAIN_FEATURES_LEVEL < 2 && preg_match('/_dev$/i', $subdir)) continue; + if ($conf->global->MAIN_FEATURES_LEVEL < 1 && preg_match('/_exp$/i', $subdir)) continue; + + print '
'; + + $file=$dirtheme."/".$subdirwithoutzip.".jpg"; + $url=DOL_URL_ROOT.'/viewimage.php?modulepart=doctemplateswebsite&file='.$subdirwithoutzip.".jpg"; + + if (! file_exists($file)) $url=DOL_URL_ROOT.'/public/theme/common/nophoto.png'; + print ''.$title.''; + print '
'; + print $subdir.' ('.dol_print_size(dol_filesize($dirtheme."/".$subdir), 1, 1).')'; + print '
ref.'&templateuserfile='.$subdir.'" class="button">'.$langs->trans("Load").''; + print '
'; + + $i++; + } + } + } + } + } + + print '
'; + + print '
'; +} diff --git a/htdocs/install/doctemplates/websites/website-template-corporate.jpg b/htdocs/install/doctemplates/websites/website-template-corporate.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a693fb4395eaf618fd26b3267fe204183ca8a792 GIT binary patch literal 94744 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Ⓢ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ƈ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 alias is also used to forge a SEO URL when website is ran from a Virtual host of a Web server (like Apacke, Nginx, ...). Use the button "%s" to edit this alias. EditTheWebSiteForACommonHeader=Note: If you want to define a personalized header for all pages, edit the header on the site level instead of on the page/container. @@ -89,7 +90,8 @@ AliasPageAlreadyExists=Alias page %s already exists CorporateHomePage=Corporate Home page EmptyPage=Empty page ExternalURLMustStartWithHttp=External URL must start with http:// or https:// -ZipOfWebsitePackageToImport=Zip file of website package +ZipOfWebsitePackageToImport=Upload the Zip file of the website template package +ZipOfWebsitePackageToLoad=or Choose an available embedded website template package ShowSubcontainers=Include dynamic content InternalURLOfPage=Internal URL of page ThisPageIsTranslationOf=This page/container is a translation of @@ -101,5 +103,4 @@ NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynam ReplaceWebsiteContent=Search or Replace website content DeleteAlsoJs=Delete also all javascript files specific to this website? DeleteAlsoMedias=Delete also all medias files specific to this website? -# Export MyWebsitePages=My website pages \ No newline at end of file diff --git a/htdocs/user/param_ihm.php b/htdocs/user/param_ihm.php index c33c26fa95b..30dc17fa0a7 100644 --- a/htdocs/user/param_ihm.php +++ b/htdocs/user/param_ihm.php @@ -314,7 +314,7 @@ if ($action == 'edit') print '
'; // Theme - show_theme($object, (($user->admin || empty($dolibarr_main_demo))?1:0), true); + showSkins($object, (($user->admin || empty($dolibarr_main_demo))?1:0), true); dol_fiche_end(); @@ -387,7 +387,7 @@ else // Skin - show_theme($object, 0, true); + showSkins($object, 0, true); dol_fiche_end(); diff --git a/htdocs/viewimage.php b/htdocs/viewimage.php index 69ab71e62ed..8dc38eb2ae1 100644 --- a/htdocs/viewimage.php +++ b/htdocs/viewimage.php @@ -94,7 +94,7 @@ $entity=GETPOST('entity', 'int')?GETPOST('entity', 'int'):$conf->entity; // Security check if (empty($modulepart) && empty($hashp)) accessforbidden('Bad link. Bad value for parameter modulepart', 0, 0, 1); -if (empty($original_file) && empty($hashp) && $modulepart != 'barcode') accessforbidden('Bad link. Missing identification to find file (original_file or hashp)', 0, 0, 1); +if (empty($original_file) && empty($hashp) && $modulepart != 'barcode') accessforbidden('Bad link. Missing identification to find file (param file or hashp)', 0, 0, 1); if ($modulepart == 'fckeditor') $modulepart='medias'; // For backward compatibility diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 5083f492266..77b70261a4c 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -30,6 +30,7 @@ require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/website.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/website2.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formadmin.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/class/html.formwebsite.class.php'; @@ -1671,14 +1672,14 @@ if ($action == 'exportsite') // Import site if ($action == 'importsiteconfirm') { - if (empty($_FILES)) + if (empty($_FILES) && ! GETPOSTISSET('templateuserfile')) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("File")), null, 'errors'); $action = 'importsite'; } else { - if (! empty($_FILES)) + if (! empty($_FILES) || GETPOSTISSET('templateuserfile')) { // Check symlink to medias and restore it if ko $pathtomedias=DOL_DATA_ROOT.'/medias'; @@ -1695,29 +1696,37 @@ if ($action == 'importsiteconfirm') } } - if (is_array($_FILES['userfile']['tmp_name'])) $userfiles=$_FILES['userfile']['tmp_name']; - else $userfiles=array($_FILES['userfile']['tmp_name']); - - foreach($userfiles as $key => $userfile) + $fileofzip = ''; + if (GETPOSTISSET('templateuserfile')) { - if (empty($_FILES['userfile']['tmp_name'][$key])) + $fileofzip = DOL_DATA_ROOT.'/doctemplates/websites/'.GETPOST('templateuserfile', 'alpha'); + } + elseif (! empty($_FILES)) + { + if (is_array($_FILES['userfile']['tmp_name'])) $userfiles=$_FILES['userfile']['tmp_name']; + else $userfiles=array($_FILES['userfile']['tmp_name']); + + foreach($userfiles as $key => $userfile) { - $error++; - if ($_FILES['userfile']['error'][$key] == 1 || $_FILES['userfile']['error'][$key] == 2){ - setEventMessages($langs->trans('ErrorFileSizeTooLarge'), null, 'errors'); - $action = 'importsite'; - } - else { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("File")), null, 'errors'); - $action = 'importsite'; + if (empty($_FILES['userfile']['tmp_name'][$key])) + { + $error++; + if ($_FILES['userfile']['error'][$key] == 1 || $_FILES['userfile']['error'][$key] == 2){ + setEventMessages($langs->trans('ErrorFileSizeTooLarge'), null, 'errors'); + $action = 'importsite'; + } + else { + setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("File")), null, 'errors'); + $action = 'importsite'; + } } } - } - if (! $error) - { - $upload_dir = $conf->website->dir_temp; - $result = dol_add_file_process($upload_dir, 1, -1, 'userfile', ''); + if (! $error) + { + $upload_dir = $conf->website->dir_temp; + $result = dol_add_file_process($upload_dir, 1, -1, 'userfile', ''); + } // Get name of file (take last one if several name provided) $fileofzip = $upload_dir.'/unknown'; @@ -1728,7 +1737,10 @@ if ($action == 'importsiteconfirm') $fileofzip = $upload_dir . '/' .$ifile2; } } + } + if (! $error) + { $result = $object->importWebSite($fileofzip); if ($result < 0) { @@ -2648,12 +2660,20 @@ if ($action == 'importsite') dol_fiche_head(array(), '0', '', -1); - print $langs->trans("ZipOfWebsitePackageToImport").'

'; + print ''.$langs->trans("ZipOfWebsitePackageToImport").'

'; print ''; print ''; print ''; + print '


'; + + + print ''.$langs->trans("ZipOfWebsitePackageToLoad").'

'; + + showWebsiteTemplates($website); + + dol_fiche_end(); print ''; From 7824731f179fa3120a3d30db237359463d36c0ac Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 00:34:42 +0200 Subject: [PATCH 117/228] NEW Add feature to search a string into containers --- htdocs/core/ajax/pingresult.php | 3 +- htdocs/core/lib/website.lib.php | 39 +++++++++-- htdocs/langs/en_US/errors.lang | 1 + htdocs/langs/en_US/website.lang | 4 +- htdocs/main.inc.php | 2 +- htdocs/website/index.php | 117 ++++++++++++++++++++++++++------ 6 files changed, 135 insertions(+), 31 deletions(-) diff --git a/htdocs/core/ajax/pingresult.php b/htdocs/core/ajax/pingresult.php index 9b46546f5c3..3055942f89a 100644 --- a/htdocs/core/ajax/pingresult.php +++ b/htdocs/core/ajax/pingresult.php @@ -17,8 +17,7 @@ /** * \file htdocs/core/ajax/pingresult.php - * \brief File to save result of anonymous ping - * Example: captureserver/public/index.php?action=dolibarrping + * \brief File to save result of an anonymous ping into database (1 ping is done per installation) */ if (! defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1'); // Disables token renewal diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index e9507b8556d..405a0687eae 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -575,6 +575,8 @@ function getPagesFromSearchCriterias($type, $algo, $searchstring, $max = 25) $error = 0; $arrayresult = array('code'=>'', 'list'=>array()); + if (! is_object($weblangs)) $weblangs = $langs; + if (empty($searchstring)) { $error++; @@ -583,24 +585,38 @@ function getPagesFromSearchCriterias($type, $algo, $searchstring, $max = 25) } elseif (dol_strlen($searchstring) < 2) { + $weblangs->load("errors"); $error++; $arrayresult['code']='KO'; - $arrayresult['message']=$weblangs->trans("SearchCriteriaTooSmall"); + $arrayresult['message']=$weblangs->trans("ErrorSearchCriteriaTooSmall"); } - elseif (! in_array($type, array('page'))) + elseif (! in_array($type, array('', 'page'))) { $error++; $arrayresult['code']='KO'; $arrayresult['message']='Bad value for parameter $type'; } - if (! $error && in_array($algo, array('meta', 'metacontent'))) + $searchdone = 0; + + if (! $error && in_array($algo, array('meta', 'metacontent', 'content'))) { $sql = 'SELECT rowid FROM '.MAIN_DB_PREFIX.'website_page'; - $sql.= " WHERE fk_website = ".$website->id." AND type_container = '".$db->escape($type)."'"; - $sql.= " AND (title LIKE '%".$db->escape($searchstring)."%' OR description LIKE '%".$db->escape($searchstring)."%'"; - if ($algo == 'metacontent') $sql.= " OR content LIKE '%".$db->escape($searchstring)."%'"; - $sql.= " OR keywords LIKE '".$db->escape($searchstring).",%' OR keywords LIKE '% ".$db->escape($searchstring)."%')"; // TODO Use a better way to scan keywords + $sql.= " WHERE fk_website = ".$website->id; + if ($type) $sql.= " AND type_container = '".$db->escape($type)."'"; + $sql.= " AND ("; + $searchalgo = ''; + if ($algo == 'meta' || $algo == 'metacontent') + { + $searchalgo.= ($searchalgo?' OR ':'')."title LIKE '%".$db->escape($searchstring)."%' OR description LIKE '%".$db->escape($searchstring)."%'"; + $searchalgo.= ($searchalgo?' OR ':'')."keywords LIKE '".$db->escape($searchstring).",%' OR keywords LIKE '% ".$db->escape($searchstring)."%'"; // TODO Use a better way to scan keywords + } + if ($algo == 'metacontent' || $algo == 'content') + { + $searchalgo.= ($searchalgo?' OR ':'')."content LIKE '%".$db->escape($searchstring)."%'"; + } + $sql.=$searchalgo; + $sql.= ")"; $sql.= $db->plimit($max); $resql = $db->query($sql); @@ -631,6 +647,15 @@ function getPagesFromSearchCriterias($type, $algo, $searchstring, $max = 25) $arrayresult['code']=$db->lasterrno(); $arrayresult['message']=$db->lasterror(); } + + $searchdone = 1; + } + + if (! $searchdone) + { + $error++; + $arrayresult['code']='KO'; + $arrayresult['message']='No supported algorithm found'; } return $arrayresult; diff --git a/htdocs/langs/en_US/errors.lang b/htdocs/langs/en_US/errors.lang index 4c8e761da9a..f8c3c1a1aee 100644 --- a/htdocs/langs/en_US/errors.lang +++ b/htdocs/langs/en_US/errors.lang @@ -218,6 +218,7 @@ ErrorVariableKeyForContentMustBeSet=Error, the constant with name %s (with text ErrorURLMustStartWithHttp=URL %s must start with http:// or https:// ErrorNewRefIsAlreadyUsed=Error, the new reference is already used ErrorDeletePaymentLinkedToAClosedInvoiceNotPossible=Error, delete payment linked to a closed invoice is not possible. +ErrorSearchCriteriaTooSmall=Search criteria too small. # Warnings WarningParamUploadMaxFileSizeHigherThanPostMaxSize=Your PHP parameter upload_max_filesize (%s) is higher than PHP parameter post_max_size (%s). This is not a consistent setup. WarningPasswordSetWithNoAccount=A password was set for this member. However, no user account was created. So this password is stored but can't be used to login to Dolibarr. It may be used by an external module/interface but if you don't need to define any login nor password for a member, you can disable option "Manage a login for each member" from Member module setup. If you need to manage a login but don't need any password, you can keep this field empty to avoid this warning. Note: Email can also be used as a login if the member is linked to a user. diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang index efad38c14f5..72b73d1c479 100644 --- a/htdocs/langs/en_US/website.lang +++ b/htdocs/langs/en_US/website.lang @@ -103,4 +103,6 @@ NotAllowedToAddDynamicContent=You don't have permission to add or edit PHP dynam ReplaceWebsiteContent=Search or Replace website content DeleteAlsoJs=Delete also all javascript files specific to this website? DeleteAlsoMedias=Delete also all medias files specific to this website? -MyWebsitePages=My website pages \ No newline at end of file +MyWebsitePages=My website pages +SearchReplaceInto=Search | Replace into +ReplaceString=New string \ No newline at end of file diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index e1a1f333d1d..2ba5e3b484a 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -2344,7 +2344,7 @@ if (! function_exists("llxFooter")) url: "https://ping.dolibarr.org/", timeout: 500, // timeout milliseconds cache: false, - data: { hash_algo: "md5", hash_unique_id: "file->instance_unique_id); ?>", action: "dolibarrping", version: "", entity: entity; ?> }, + data: { hash_algo: "md5", hash_unique_id: "file->instance_unique_id); ?>", action: "dolibarrping", version: "", entity: entity; ?> }, success: function (data, status, xhr) { // success callback function (data contains body of response) console.log("Ping ok"); $.ajax({ diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 77b70261a4c..0e9724b66c4 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -302,6 +302,12 @@ if ($action == 'unsetshowsubcontainers') exit; } +if (($action == 'replacesite' || $action == 'replacesiteconfirm') && empty(GETPOST('searchstring'))) +{ + $action = 'replacesite'; +} + + // Add directory /* if ($action == 'adddir' && $permtouploadfile) @@ -1793,9 +1799,10 @@ $moreheadjs.=''."\n"; llxHeader($moreheadcss.$moreheadjs, $langs->trans("WebsiteSetup"), $help_url, '', 0, 0, $arrayofjs, $arrayofcss, '', '', ''."\n".'
'; } -if ($action == 'replacesite') -{ - print ''."\n"; - print '

'; - - print load_fiche_titre($langs->trans("ReplaceWebsiteContent")); - - print '
'.$langs->trans("FeatureNotYetAvailable").''; - - print '
'; -} - if ($action == 'editmenu') { print ''."\n"; @@ -3053,6 +3051,85 @@ print "
\n"; print "\n"; +if ($action == 'replacesite' || $action == 'replacesiteconfirm') +{ + print '
'; + print ''; + print ''; + + + print ''."\n"; + print '

'; + + print load_fiche_titre($langs->trans("ReplaceWebsiteContent")); + + print '
'; + + print '
'; + print '
'; + print $langs->trans("SearchReplaceInto"); + print '
'; + print '
'; + print ' '.$langs->trans("Content"); + print ' '.$langs->trans("Title").' | '.$langs->trans("Description").' | '.$langs->trans("Keywords"); + print '
'; + print '
'; + + print '
'; + print '
'; + print $langs->trans("SearchString"); + print '
'; + print '
'; + print ''; + print '
'; + print '
'; + + print '
'; + + print '
'; + + print ''; + + if ($action == 'replacesiteconfirm') + { + $algo = ''; + if (GETPOST('optionmeta')) $algo.='meta'; + if (GETPOST('optioncontent')) $algo.='content'; + + $listofpages = getPagesFromSearchCriterias('', $algo, GETPOST('searchstring', 'none'), 1000); + + print '
'; + print '
'; + + if ($listofpages['code'] == 'OK') + { + foreach($listofpages['list'] as $websitepagefound) + { + print '
'.$websitepagefound->title.' - '.$websitepagefound->description.'
'; + } + } + else + { + print $listofpages['message']; + } + } + + if ($action == 'replacesiteconfirm') + { + print '
'; + print '
'; + print $langs->trans("ReplaceString"); + print '
'; + print '
'; + print ''; + print ''; + print '
'; + print '
'; + } + + print ''; +} + if ($action == 'preview' || $action == 'createfromclone' || $action == 'createpagefromclone') { if ($pageid > 0 && $atleastonepage) From ae4bead85c2d7cf4e47e016d03b85c38ecd27af7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 04:43:50 +0200 Subject: [PATCH 118/228] Fix missing function --- htdocs/core/lib/website2.lib.php | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php index 903b8a8d144..a67c0f9f142 100644 --- a/htdocs/core/lib/website2.lib.php +++ b/htdocs/core/lib/website2.lib.php @@ -331,6 +331,33 @@ function dolSaveHtaccessFile($filehtaccess, $htaccess) return true; } +/** + * Save content of a page on disk + * + * @param string $file Full path of filename to generate + * @param string $content Content of file + * @return boolean True if OK + */ +function dolSaveManifestJson($file, $content) +{ + global $conf, $pathofwebsite; + + dol_syslog("Save manifest.js.php file into ".$file); + + dol_mkdir($pathofwebsite); + $result = file_put_contents($file, $content); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($file, octdec($conf->global->MAIN_UMASK)); + + if (! $result) + { + setEventMessages('Failed to write file '.$file, null, 'errors'); + return false; + } + + return true; +} + /** From 155d41ee80485177871800a13ccc8ec6c3ad4625 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 04:49:12 +0200 Subject: [PATCH 119/228] FIX Enable web site --- htdocs/admin/website.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/admin/website.php b/htdocs/admin/website.php index 2b7e4fbf1f8..5096563ad76 100644 --- a/htdocs/admin/website.php +++ b/htdocs/admin/website.php @@ -618,7 +618,7 @@ if ($id) // Active print ''; - print ''.$actl[$obj->status].''; + print ''.$actl[($obj->status?1:0)].''; print ""; // Modify link From f4e58aab228aa0cf179cb23ca64d578bbe625f2e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 04:49:12 +0200 Subject: [PATCH 120/228] FIX Enable web site --- htdocs/admin/website.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/admin/website.php b/htdocs/admin/website.php index 2b7e4fbf1f8..5096563ad76 100644 --- a/htdocs/admin/website.php +++ b/htdocs/admin/website.php @@ -618,7 +618,7 @@ if ($id) // Active print ''; - print ''.$actl[$obj->status].''; + print ''.$actl[($obj->status?1:0)].''; print ""; // Modify link From 77c96a49e1a3754c79c32c3242fc15daf8d36dd6 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 04:53:47 +0200 Subject: [PATCH 121/228] Update website template --- .../websites/website_template-corporate.zip | Bin 2296189 -> 2297082 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/htdocs/install/doctemplates/websites/website_template-corporate.zip b/htdocs/install/doctemplates/websites/website_template-corporate.zip index f4b25d9a69e5b9e8ab22761c49c91d61112cd40c..6ee933a0c7bff29d44b2352e7e3d9ed557da39d5 100644 GIT binary patch delta 168284 zcmXV%b8r~n*T!SpX>8lJ&BnIvWMeyxZ99$a#%gTaZqmMezy0mZXXcr6pS|boowIlL zkG-GCv7qmnv7kuGa^MhfApd_!G$1IYXKsU%K>VkAw?V1?sk3cR*8f!7=r&d+=s(%E zhxH8hZ(Mj4Yvf;$Pk_Yi-*`l32*F6qC zH=&||fQbBsHhoVH2R~f^f(*3{KN=ek?VtHc3}*xSpTt5WvG{i%>lYLeG*A!_c`y(V z^7O`LB)qnmT`cPV74Xgo8}ZHv_ZRrTAp8Zf?VS;+Ec9O?f#f9r3W=yvLir2oU(o)7 z{uhk4DkV&wn9> z)rNF}`Y#H*hLr^VPck)OAyWP)BevAQ{sR6Nh`&Jo1*&aJ4H~2ApOY^KyS4nk0tvO6 zbz12`Kw=JX695~lwetNe9qLcIVK1VtVSgfzWijTEQtR*1xJ5n#G8 zT-o4EmH>SO@`49t?Svs{RO3@{=TO=XSp# zBUTkbg;sOD(<~PffwxVPAN;a*1cW4;C@W`>H8DVa>U9~Ynh{+PExYSuVQdxCkAs2~ zGc;L_-oq(&v*-o~s4RO$NyI>C{UrY?G+PD7t>(wHq>bXs0tcmnCtPu}3xY~FOfonZ z3sywLS|BZ9kkc~oef%pI1cEOcC_F1lk*lHW~$nD*K$q9zfw#B?O*m zj%o~1bk0vB4nxZDjd38kc|+#|scFTS8uG~$S+xoCoXX2aHQn+J|KPKp4M8V#+GL58 zld_x+CQe&~&4iFR3va>Nzx7dI;c`x?d-`No<;!?*Xz7*Q!IB?RaHG3_k5hk}XTGBf z8QY`9Hf0yqig`NT=4J~=#G_7Erdep<_XlwlM_v}^=UmTC9bntu0+g*JG~_O= z<aR>nk$;HPX_MnKW)|#1cz9FKc8T?$H<=L8PW4VUcJb)-a(pB~*yO3V&l$ znPi|YPKQsF&L|e_;Pbiv=U@Wrk71uqowA3?@9h55CpDg1(eWR)SzTprI zU>}GgS_(UGb?|_sracXsOf2?IJm`zr> z=%+UpD6(pK)e47*Oh*P3sYf-JG>uPBbAwj{=zOA|J8lJY7I}oN%ej+}a;Ph)IZ zJ(d#IUr=wv*yMb-mM4<-#%tYhMf`lGGw>b1-hLgOIC`&HRWS;iO;BmOKg2?xl9nLT z&PMuL_W+5YaSO=gm1z$+7HuZ7IdT4AeZmgen$kYTfLdQ4o{G?;ZPNY8vouBX;HOy4 z#p_A~mG515uA;8b!_aOozT-N4;L0J58~2^C@c$Zk}{R#(N+7RviK%q4dQKz8_m&s^bkEF9H3F^7gny$I7S0#UboM0`sZ!G zZnm9^C(5@X@Hme=!SfGyA2%kUPEU|OeO#ch{D$(r0@P5y%%o?2QE4*-+x&5Qqva8) z8+`%!&h5U|RS1*V7EKBXbRe!qGyn2xfofxcdGj;!p^Dh#Df@injuLRjKShj=l=jw^c(Q0- zx2sCLNu(YCsUb6;Up?~5~ z6XAg{TDrEo=2_wB>IR$6k4ECD_}(0iZa<1!pP<`Tfip#%D{fb!SVmwZ3N=Y760m_E z;JnYP*GBjM1puNn%N<{}0=f_t_xiNG2BT|jwG@~ z!u=B$S8r|ACFo~r{7*X8)WU2iMpgzy`u@C0?cayKjxTE}EG%YJOP= zyDEG1TgsSV)Qyo^uvjB0Zc990Ga84|10gRpp`5O>LVu)$N(mDE^tXRpGTH(R&I~O_ zu@m(_AHseY22Qlr1w{^$U8~#D(p-7n%yRIsg6AN`rcY6cYU(a*vrkD+hhJXF!5IoAslewMPcR$Io~LlE z#_LvS_!`Bj@rquaj6}Ji?1<|)Jau1sY(UZjhr}Jy7o;Em(F&kYr+kx16$(W7^E<-s zd*>#<|FF(lH%O>7@2rRomZ~{g27!w~LJ{uy!2sl;R24`nqA8SV#@ln* zLU=Qdz(UZ%c$-?hYC*`BLv#sxVDK9FDMxUn$Xv!6ZL=p-dBm!xmuOGERnP1Jf{)>_ zsE~jTzBy3L^O$FRW9=6l%J$RO@+$%dN?`m9LO`-kTCbmuN*X8pYO>L$MJrs|>nQdZ z!$xJQ?eVM31zM+9sJFH{#d-JJOn`Cg52(N4D+o$pA`D5DMr5Zqc2#Q z);I5Y*;F0IKtJK*j)s>#tZz_mn9Xnt|3!|oa23$ts(6Fxp^S9)SUqWS4V`NSilArt z#oK?|IW@6lJNoLL#p>Uxw(zC5ah|FRr1m~>6l1&< zNVsZ(K_i$^LqxZCLGiierWePJnbsV8U)Qy1amKnVSfhO!_2Vztq8Nb7#qDsAp#e z&t5RXl5P@Yk-s2766vPR%k3ISuHi^iBK0tzL;NEV-l$mYF7Z37SiTiFn?^d${bCpo zUqz7eQ5fOmEj~t4!is~2dML>;V8%zg5D#JiVR+#?0r1J(Zv_?b;A?Hp0H$S&cG01^ zqdzR}bW>>ZH!=m<;3>268ZR2q!>bF(7ugt z9v*q8jND}S`Wn$!Q~G~&0Ix+{e(2wfBeH_HO?}7~#0ipCSV5UjpiT}BhezMx&LF0? zsOj3p#z9C69>^qP_%X~ty+TRby!u)8Japv${O#&> z0z~v38ZaP<{9V9j6C9O!Skjehm9sbW@R@awQyop*%RAZW^#ja;$})H7 zf-X0CmnHEYi^GbP0&u~~cQ=mI)kcK?>(&(0tTlY}MRsr?rW0+3h2mpm3;C2Qi|KA& z{|5YlkF$N?i3*kNJ!(PT8uj zv|vM){x+AqzlzQ1CPykXoCq<@rQ(v8O+-gItFwOcYiumXu@mRB;*Z6pm_xU4*KIhv z*%mzl%kLSVx3Y@i4Kfn0DDjKg>ir5BrOLcrB4_0$LITt)5(MU=U^^Pn5x4_^t8B+M zgsQ%zt%xRrK$b-Iwf0*C6?GPuI|lD|X)<2vJ|lOVhFL6$JZ0WWuF`>ggA*bT&B!TB zr(i+|MqV^SGHtEFMB6y2-~fZmL>r7p)9DNg)YN&vm1!)TJ^;qkzpL>yK?DU7y~$DD z2~*^p5)O}v`&0u`QqJ8EJ-G~ zX1A%}El{8BdAE}}`oJ4WVdw{qDD0V(iG;-NkW(t)H-p%E(p_a>PGoz1$bwveh16V# z^MI$(p&Cp=c|J0lhdo_`xV_qV)h#3DDC!x97NH4g4k{&dX6fmc%wn28Af2gGhjk|G zY*n`o$d(^3r(WX5!Fa24bjs!5Qj{x^x*2$nIMVmub|@ZU95@yQ#axU!(k{BDeMOfD zVJUt~I*j$Vjn9-lPi6E!JJ!Lpp;eKP3Zj9UgP4j%i~8`98Ic^QvBf|+i7x$#meMF@ zvB%-rpizSzTU0U&Er*FQ$UvWk(2`2C)4-n&T#IA8pF`T>7+qK0x_7$BaIxXmR9Tb+ zKXh3KL^mu6L8D<-7S}?Op@0O2oNE9w4phuKhU= zc)U?7niQ`WHU4K0=cehE$n^5|Q`E(Jd4ViP5s$G3^9*=xOdmqqW| zr@dB8g{4_O+cACE>Z|IY7_g$d~84I@w+65O)})GQc( zc~!2mgo(MV&6Cnj7{@E;LD`XG#AWzQzVqA2HEWxsB5Y=oLuHrA5N?V0M)R3xZ#kY_ zyLb2?gIwc7*3s}4)M34$t=Mf_3Jw13j1>RLvt55Qq$&_K-7-2Utj9-bu<*pP@Fr%h zLlPQ$9qN??lW!5S6_YzquMw^e-~jW81l<9losupb*hD9RIQuUqsdu8vA^bmzK!+OB zWuixw*{6sD)IdM(xT&rv47AO+%@ajdsf&=s;xu|n%&Zy(M{{uqw!?bUF8Iy!6Qf|B zDwKB`N@s&C3eKP#)ciklKx2QN&AyWFlZ-B>@(A_Axo9(Ig~87(@ypTz5F6EuC_+Qs zTHjXrFSS+!PWKtyTr#53X|jl^oH;$%tVf7<)2i=H)(&V4+Q}#5(wYy;@Ev4ZU0_Hv z@OvtK&a6#Yc~PSX71Gke@(DrfDfX!%4CP84^FF|~Fs`}@d6<0me$ZxGd%vEM{Iqb0 z`-=Z&B)f{t zd64HXDiKy3#toV2v?Y5CQEZA63k$<7+l8EdwgSJh;u`QY9BwQk0Q=y!Btoy_(WSJa ze2iHTw}-6jwznDA1Nw{3vLsv)MC3TUPKOH|u4Y zQBvG!^=dK5a}Mu;a)HFSyokC1JI;s1moeHA*KT(U@-X;Q(wWibPw$cgXI{()c2=B> z5vqOW?AIuKNZW160%c$HOD7?7kno+NynUy9mt$O~$w7Kgr^t!8Z-!Zzl?N@e@tw|C zKbDOGL30GlS%?jh{xBoXiuiH!4xHs#bH*0wI8lG}?77MQ zUXotDz1KT+uwa~g@zdZ!sXgw(yE-NdY0C+V0%UD`J?uA9+yY0&yfxm}v4RN>PG%PR zsrjOT<5=IR zd|U<-KIAe$|0M6|xS}QdiV7^(eH*yT4Dm$NJ4spE)v#n%RHVeznT-4e#R(zu;v_Us zt-6F$UJRRLkvV=wUFskO1sf)j{|8qp1gS@-<{~~EibM+UJSXp$%5a3ka;!x=YE z=`F?uWSXwBmLRX_=wsIN!WRC5`-mF1&P`gf436VnbSRf z9G;}fgBx%!iwqQ{lJILC)Jxg=><18Lk=4S`Krlz!lf<=XJq*e^IP?0Dvr<1i@}zSp z8evi6+Oh!B`-#A)vRs)TtDS;M+`%dgJB!}|am1S~~#Pp1;;Dtd=Q&?-# ztyFTV8@g@J?Jk=yyL#zh<^|sd)~qaGMeaqQnXGQp6q3B?{nb4%q7R|I^^9v|K$~oY z?z?rl({)7*P*p%7r??x&MvYBoLFzV(bU1bLHrB)cg!(cZg{)g}vHGr;e6y`NKtoUp zh+9pB6mNiz7~ebYfX@S#1QhZQ(aY-(!r{D4_t2~udp|FiraKVkCV%MfT*Ir7CPVq` zEs62M?addvB??mYdyu_b*ycYI$dL`f-2GO%{S6O4F?pqtI%mhwd?@B|;18KoV?HX% zpgnXyd=>5O5fpEHz8xK?LZcoSIb@v#BzbXVCHU7JW=D*I`Xl?Fr;vHzU6wzsAry$B z6Fn%XWZCzmI3X>lqwv;AS&V9jzL>>@u6~sGf?vWZmx0#-b9V5*#fu2;C_~%x;*xYU zi5rnq^Mov^5(M*p<;}h*yN==%`S$EiXCGW=b9reVM0*<|_c(kps@YhkXPQW+nMN#CZY7)hcrfObI4^=2X$?{R zP|pxy7ejE^ufDSKa1@05kYw~xUI;k>>8*dynJN>_&#zkf0&zeQ19A~u02aL117kd$G{n_QeMp#AZKx}y=Ln- zYe4;a!`tN3?%)u_S6m#I>lmDVX>8=;`aF%9 zY`cNNF*ajYiAwOEuz=o&w2nnQ#v(BjJkre3fD%<7}JtC{o;e$ir{dy<;TRRX`xR#?f$D^B7gssJ?w%P;D9A6SPwb%F}OiyMGFwg7I&&mY^H8=gM>$Tz=rmX?RlMowJEdhhLuc;=n6kZrHu zgGR+MH991ebD}X!OUC`$l)WpML@bj4QzTtSQ&c2Ml=dv-(h)P%zd4mvQ?(StVb&Rb zEo_HkU4i&BoLEZAr3MQp+QJ6H&-4bU?vw0ghiQ$M4d+LB5VR!fV^^%l_v zI~Z5xu-6P**4G#vr=N9IRw@MGDqk>7<4jmvepNJ}_lryDY?LR4bwzo9g;S8NpW#fx z+M#IkXf$)h-QwI^5-4q7HvD0#sy2Vk?DGeDb(EhuF~sWj%-coU48t>g7J^nLnKy zo^yIKHka}(!V@ak2R5~BsMpNkK5de6^ICaKxM~bN9q*vB+eT9Bi&{z5+PpPWh|r5- z*BW;mdQcaw=fHz6yk-$!EO(xZ+Pw9Ux*IDHq`Ei_bq-N-tu7GX7=WfsoW0$!S6g9K z(@s^uVY5(b4Kn9MOM}iZCr%(zRfd4CBB#n6c#>u7Q|1wSRlRFfpokh$>iR>vLZo$A zsWv`L@?JwHAx9GLV=ouuYEPkZy5$W_rXyK{^kQoh*OxK<6W9%_N|Giz7+~&Ne4+)A z+fO>?I}1j>wzr~wKel)Gm^aW^EWM|^H(SDq+x}`~XlK=fFhr0B$x+_U zw1gur$wj4;xkwoHf}NKR!7El(EsP|(oXjQ=jyi$JIYg@^Gq zC^t#REg`JX_Hn`my!wW_BhPO~7~TOGGJOovaa#FUW6^?uh|m5-YCx@@JFt(DRZ$r* z(r-uFB%-D;LDR|23(7Q`{9r-GU>t8pPyPZ8uB%7KupB~0vc-tgz5?>X-SfddA1PW9 zP`YA{3f{QTd64FeOJ5(LlW$(_htvSrb3XVE zIir;)cH!Rb_v29YT<$8fj=pa6{-MG5)9VsC>+l;#LK5?pnX8?#OCv(E zZ!4jv8kXq7gB}GfLub%x4{~mAc?zFmiaM7aLZ&^=d|1TnLORX>OjRg*w&i(EWnXCJ zETa|GaT=R!m(-s&#3pWD^cK;X zJcfEhXB~^Vu0hua$Jn1GpnPY8G~lUPcJRTvL!6ftkdTVKXQ7uF1GRxvY-DS8ULNzF z4w^HtEzV#o&$|v5jpjQr2ztVVRn{|f8F$dDg6{j%QYG8pZkDr>c7^nkOpUm9E6*&p zNIBPC67Mt>DOZ_GrQ&HYV=r2ZurQw>Cii+F0yL%mLo^6tS{@3X&)eM>w}iR{A=)7D zo%x^_Cst8#!bDjq-~9o8fA5Cx1I z$c$%erEZEcN;xTmOgLo=v++0(Zas9i#fS0*XHNVaNd><(NdLaPwuTp(hS=43>)xbas48|b_jo+- zFjII2oeI(Fy`iH1{w%@fA(!oi|LyF%lG_b)2+e*eqGzJ93Sb#vCh6s$h(W;6TAdMu z6cj#hs+PS*KKacVF?!rt)`*R9Wh0XnEFMf4q)S>A>18}BAIc&4&2 z=tK_dSOF1pmL{3Lz?rml#UsAXSAAUP<`VdeZ*w=P(b6b0Q&zjmMy&NNe0geFyly^v z{8k-PTv@=_1C-K_ndI^PyW`=5D^UVlPjLRuYE5c0r|73eJ*l=bFmYDP_jZY9V_pnu zKb*@e>ghMrN3$EX{=+|lP_U!2fvi`vtcf+Ocxdc=v(79~#^8huH?zSLiA1c0)e9(k z7EzX68;#$i2(|fwS6i;9I9I-p6GN%hcGMdA*Rla>^r`|>y1Hh`FKYUeiNt)TdJw6u zpYjcaj~%=7s2Iu$WdnQm4)~DGShQ7)Pp;GTd(H`W7l}XR$NNR5U4F4)IcKCBQyk-a z2O9T-ZH|K)p2El=VfLF&J-jcZxDN7wH(#X5fxKUVEY|9nkiD3qscS_@K_fl!@fNj} zJnaHzV46~F#Jb6$pAgmDo{)TNCKd<1OdiKblX_jhk^#0I9=m5X{+y*n$x5$WiSR6# zSf*|rIzt%yuAs&C1N*7r&H{MY+7*LWi;CS7cZu2$C0Cd3v(LcXkzvdr0{{CM7QSd| z7xsi?-v?B4{4?Aa;sa^3VM)bUZI;TVLX6e*!Q=zu+-#w#&CW=f)M&t|Dr>a4q&9e^cPyBQN3MjoH&#Tgu!b2cO-OMBH zk6<^$bXWdeHWiF^C>zyx!G!V?5T7Tdy1x$>^R=q@)|*Luc&s zfr>zgDaw4jg&KK}>m61$v%HBGMOMKN_Ep@haaOa1E`zMR<|I0fvA7zC6@M`FU$;9! zJu9vu#Az#mV1^uI7eqaDHCQ<`2CMLz6=hlA$ZVNUsEFKy9WJK>i9KoZhnPSpTx0FH zZorYTn?7iShmT|L+U2yim)X)EqcFJDc7)2<59K|3XWt^t3NHMehFcX!oI50(WSfM^ zFg{5IrRwCku{_(~lAX3^+E325ikn$vx7L!CdirN}!KpAC@HlOMTQ@61<|G(_DF^$} zp*=EX--fimXL=g z(*0an&3_RZ{Qw_MmiztdYvPACk{V((|ML^wxN@r_>OIBn-$kzJMlF4 zrb#Go5&S#nX~>7Apw598xt5h3 z_`SV6!R4_PD7&i&%T)$1dihedK&} zWxvMpzFNw z68eNDc37(BsERm{=l{I)>&fi9`T{56gTl#US$1MaJ-D;4KFS7oOC$?D6pi#9auNy1 zgqYOx_gSfnj5S>r~*H%_-HmD-_II{18@JM4iIdY#=zh!{W#g zzZCmTlgAcyjYKcR9^6^@nfO50O>uPCxy#Dn@C-N4A@r6Py_Y-2MUmZjn`Moqz>ZA! z;y;}$EDOo1loShurK-zQ<0AuBC0&;zP*#(X>=fA9h@)RPH`KCdbSZJJqUemFOC^L$b%uqAEetm$dc)V6 zweH{*xsJ)$1(pYi6XsSt6KzB#L4{+&$;^`M5DF!pBaZd>{(wIir1i|0FWTryj{{3B z%{hH_IJ5xT&=LA0%3I5H=X@QjQ=s>vFhc%tDZ&I1&Tr454U(wXgR4!B{c@6E{kuhB z`3dXeB+`V^yMe`S8Av)4bY!Hsw1Jt*6|TZi$uFC1Df3|@Qs1e$rDTF${Q}vXnfx$q z{lN7nh!5{CZL$93!sDA%+k4i`WZhtn8OO{Yw?YN#zD}N+;rZCH_n##F03*YQ!=8u~ z_05cC&*VQO*}_7X+F7gH)^ANjN8wmK$S_-lRr!>uUWFS=jWD>U684O4NjIfn>O>@X z+rGM%d1=MoMB*t);(BZ~gre&QHyWi%={$Uy6cRp*IRvve|Hsm^jL0F%yZyV!V573bHWM`I zd|s?k+gb@%oQ7PC)KKl^!pi{v#%BK?M_8;6k>?)ciryCC&GJi@my5x}3=w`%sJ(8q znFH+$H;p|GDHZ)DHOgIwY3hOIay_g&qv2WLY$^G6gp9$eNdS|{yFi-BAH8FDGKYJ* zl1(f(>K&dBMul$lwmeEG;o2W`<#(U>+x2A7pSIJT2>xl=1ONC#v;(bAs_)=wqmfdH z$Zxe2P=RB4Ee$*6$}LecumDt22~DD>Z$4In@#)xuMz}5%O`1QMKKS0`ETmbw`YSF# z7UM`b!^+whjMNwp;q2IGQg8di=-$vP@Dy5n5|(663}^e*Rj%6*mGCl!g3EeI1RMDn z6!o-*H4dA5p~KDip(9-(>nlt$b`$m>_no%cWSll!97`0AkTGQ7Q@I?~KblHV-bc3i=yB1}r;f5S;}(>_*~iP? z@p9ggiS^-+baLwW*p9)We%ghPz+^YW+h-el1X@zsz(sqLIyT0r%H*C8X@JJS_ag~E zp!kbWf#=TyCH36#=yG8gez=q#PcW(Js_xT*{yVGh!70POd0)NuTE*P?`aV8@n%Rl{ z;!w*H1c6(ni+BF@-9C*L*lql7o?GYCW(~mA*?E4aA9MqGRPgWLt-@!`h|^I*ldCJ) zzv(x2$7Hng=$jAu>#50B=O7w)=BNj5kBx>Z1V6@SEVSW(Br}XPwB&dFSMjqGJ-@{3 zhv`?b?zh`xkb;cOo6oez-#CxJ?{(mpf@3GqtD{2?&o$HmxYojt+{z|zv_!KfgyTj% zAMdsq`YC2<3=2bbjHr=3{fxONI4;YNe3P;tZQW=}atGa}lj`o-qi2U*mCkUAie)T( z$;ZZdk~F|B2|TW!S8-%=ofiafDKYLf^YJjh zljknftH3g0S_T^D;OPz99Vf7l;-jz9>5He@v+?ROR_Uf^nH2Jn5jA>qYaaHZ`2FVs zbBlQ+s_=?LZTvNXa8&U|L-~%})p~oWj=r0N=S~ncB5;3gkMJYAKi!JVruNwV6$1v; zkGskI35LSmhDlj?x;+AL{W6}9JEy=KngtrHk&ppxNeuhDh-0=kXoWqRxlc7FIHl&B zz+R<0w*Of^Yv_cEMwuSeOE_7F{%t(g*_W~3q|Zo5MyS8|k=vdIB0fOU1(dqB2hMIb zy9)nY<7-t=IIW8eza-m0pDuSD7Vq{3_&rXL9YM4xP*iFVlRy&zNXS-%X1_i?G4teK zZ@dqqR@!<{B7Q}GDW+$tS$^<_Voivb5VpEYMTq+4m~J&phSR1Sn*3ZEn!Gu&-alLf zC%My z--U+^a7k}qV04?1b94^ygY}ij@`UxVjw(Jrukf1Mf7+VL-1;13}z14@+PvBSIe-qqCS<2Sqw+ zgZ8foGZC?T_13}aTs40iQ(c7`qGUl*vG;O5iry+?nG zTH9+br>rypYT1zC@j)Huo`#(vsWpS}J@W~Cks2q;@G_qlf=o`1yelAJXWIGzVz>+$f}ORR(+A!OXt2mN&FskmDe zQvpoKgNgp+SY>vHQjD~;2A#dE=Nb{smc%ba251j60XVYyJzn)QA3vtIj4r;@ z^zdJ-fa*o$SQSfNpE)CyAEIjQ#q)_H#I}sbLDqd_Sdb6srgBwGrApEj{u*-v8FW0n z6fr0={U_{J)bhkSDlNrj4?!4CKTT#d0b9Irg9xjKIME^zrAa|K0YBIsh#b z)Z?;SXypE*&)VyE)nZ2`WVjUJ2UDh@jYqml`p+431aJl-H17@WZ9)A;rX4YB+UGI* zXRgDSQP~}OleEN9p?9;cpe}!0DCX+<`zN&I60tnqn&04zl{zPOZWH04`Aad>$LC>N zz^(1GxP9Y>Wj9Ywy=}H@USpYcn2E}epn?8MMq!Lq>>DiS9U5wlbttVZTL9%=AtKlr z%I_HFjF)Q7Zf8Q zH(eOw>!n|^TY1X1D|1!W_K>2Db5$MpfWuc<%CH1U&~M?Hm<8WbjNKaT3|O!`D)^W4 zOsw_2IiH9COOx(vhfeZ0Tnt4CFD7)o^~# z*&jDCJjUOM9YhkS?Agm{`}K2)>nWqEsWxx;tfv0m*9GwtV}ZcX8;ETA{% z;;tYCX*)A>W&1STQ~mI+4rYjFI+Td1JdQg*x z-o`IXm$s=@D-taxFLK9N|6Ins!~WhpfA`fXx6en2;Q|gEDN>I|`8fQ@XQF8>*z3pr zsmIEm+Q8thFpHEEeo|G-O=7U)008G+#E(FeHl06^_&q^uI5mlBBoy5DjpSkz8El$L zN?`VG2iz9tBXfq!fsj|90vka3+P$*sm5h>QfqccH=kP(DjLZX{OBHXTA!#)@l@5us zTGt~8ByU#zOfgwZ^N56=T%Xl91<}W8&jWR zRmYh@r_i$1nnZayBmWVUJwBboh@PemklU??xo!-yf0{CMd>Grae^KYwFm0x~!)sWLT=&}4^e zzE2Eul9eKE9mc<_vZFVgK8%lx{c_doq*T|ry{~GNF1j+RS=lYSAK!wT#Q!dkuaQpt z+_;x5SNZA?Bem4-d06f)At>p5%>K(_0qlOXt29(85qWA2Zc53gF|8{>8545}LCOM| z9#cj5uz}=E$j$NT9iT(@EA!A(FTpvhoOx!QjS&u$UAY&BI2B-UYdJgh_>zCCo1Q%# zMR@*4+~M|)*@Vbz*$65oBcI6+xfBBd(&_Kv5}YiF;Tx?{+cX)HdIX42j*hhk&KAm3 z(Mk#kV;JjalY66Yo0F0%Yc1fCehuK5R_Jb2%*mM zo;^;OT0OT|nA50h)aSLUnYQLSmTLO*;>8UL>s7HthR(e`o4W3fh8GiOmF3&6MzQX! zHiI)&2H$C`nPR&(!rfy5cbV5g0n$I&h=R%Cee4$Vg3h|x!d;63rf}XhF2eFJxb4lA z#aQ^BEfke*zkpL5!m@pNHBEtd>5tOL-c$g?UjzKaFFuf>knpak;P4Ypc# zt8Dw#2V9tqCXMlDi@>GW-T1b1pRPj(7H6obmHb9bHi0deXl3MYbXSYv{ml zg>{7xM__>l4t#ubtRUsB2qbKJVUrw#4a`g~#T`7YcA72s zvN^XN-cROW$l~BV2CK8svn73kPjy{1_H*hxe?C}}R>vBbHWz&FkJkxf;jz>3E9R8L zIQ0P`ndxCb3zwhk+koqjJI(S;)rW22@?YL<=)eiip!V0k&-;gFs<}2x16GfS@)N;G z)t(Sx+dRuomlGi$u6S#^M$ZV+uavf)*-n9%c?&r^!Z>G(@!g%5X1^-GO!J5cIzAy} zWa}tMUB-G)*-&wqeC=IQ6S70OK8aghRAl?Dg=&hnDsP5E?5I7HiH_1bF#CtZWiT^? zsv1DBi~p0n&Pc8&M$$zvodbsu&KcKOYe`>(8#~LN^hMEJH7$8H=vqyFu9a1I$&BR` z+n0~&3?47qH3{46Caecy3`twf6qXO;7y4cxUS~Jf86JfrXV~d{muWR^}lz;NbL|) z1Ph{e?cRM&v*7~&0n-^1Xh;1$!EiY|Ou(BpQ{klrTCnhi=W+qX5E`ku7Q(4eLIW!S zhO~vMMC6b#pyH3oo!YybH-dP;4F^xAXI?tsX5cnMs}w<*P~TFnRj;hxYjTt-rw1JB zYtbaYp_CN}^u*dw4sBxl7+7o6>RuR=%kC9h1-crRxmcM6gGkbmWE&M&@sw&aSXVYf za&M1(eW*%iTDRdUH)EdZiS2U=g}i-bqurFztpXu6UecwUu8?Ji-zDp;`w>>?8zdaONqAbn^rjT$KBrVHo>tfQ@~-auscPPN6Z-FD z3&HcwEHYnz#Y{4$d63)Ra}Hk1#mH3JNroN)dS8XeKI2s6-^uvoJ4i^^0olrY{f1wqy-xdvejEQ`Bq#cyA#P=_^~QFu z>pgc%>^{OASr7Yh7P*t#egL{bxplzLAGB(x%JOq+#aK$-aa_)5($Kh#9qGfd@4+aw zaK9v_pL>=0o%G^Q;zJM_0YHf|1M-wvliWOm`Gu_=({f{P%(8sN+db88B4WP*1K{Ch1nz_<$ zJ|z8y0jMC{p95#l+v={-1B|ByZ)oNB}uT>ll*os!Vzw7U{Y+S?-^!_nga z6XfG}`a{|wbj6tC58pQ zxaa<;?ege7GxsV&1R$#A`-L0Sak-A-tPVL7dvqq9kAktQ2KJApi77CbXBwr+_4A|O z?<+%i!jp+NWxKp`H-nPh$>h-l3` zj=)xs9vi*(^4w}c6o16~L5O&M*;!w;XLz$pe6JQG6VRNpc&R$Sb)V zgLE3xH~QcYYxRYK6gMqq8YNZPRd=6OXJ+MvppR*Ulx~B~H=Xh6P!@v3JZ)GS5jiKx z+Bs%tX?(_fh)9$h6f_oauIoy%vI(V&geqZ2>f`S(u0je?y7JT*Br#@&{yI{^M^?%o z!$jI^{bhtRjB^x9eKNR5y%q|l;JAI&mFg3IMc{{I6hK-RxkHG1l+ zrCplNT?O)rc2irf=E^3rwqH4!gQv1+WiTz*F$V3Nf$AKgGr2zYA89k{j|yn`;In6> zX)j_)OOYhkhBpY5H5XA^_k7XuId>TtWcRurdcC~r5i9Cx&25c;hV`B$L(%MpafL8d zSm8#E>D)$Jdz9JQqI-B6!zCWrxE+|Y4rSFwrCP5_M);w6-%&s8+-6qUT}eF-O4aBN zV=g}7swZnSG$X|Q0Dc$)VyP4g^4u)XA{{i!lRuIOqhVB#I~-}X%HsMM4N>u!aqS^? zI8~i1y~izQNIElr;?UqE>+o0#z<;696sGsH_ZW*AsP8Z6I_zZjE@R$BkHitkKA+iS zPD_O*g(Nnn$w9Rrp`?FXXPj;aoyg8#@*KP6NAfJPQIas8ogLPOHDKC{SyhvGZ#JDh zwS3Jz!rrIj_eITlXf$R{jRs3|W14~mz(!|YU@@a#GZSrpd&N*K9cF|bQb*g(=vZhB zh}CIMO1E>n$2z)gj!Dlk#s_F^d~a=1W1pB#95Ts{bu3zVqUY+c+ksH)tfmz9?$Ts9r3k)8ztD= zTBMNMc?r~i6gPsgu~fb-Tn8q8X#+Ny2(_AWsABg5W7U_5{&jnuv4wn(aEihcBLnEh zyu8qWfQ;N`Hly1Bi*Mx0h2?WR7oxYBN_561b~N8NnpOGz=^IOQq?3Os`}esd+^oX+owf?>!6%bJ68rTlD@D8B zshJRe8vP-V8HH3~yMyr+w_TuJd#K(Z@lVTapK%N1Vvtx?S{Lz+HM=D|T806iGuE+6P}^p3H7!qi?jv96)xd^ho+ZCcGq zHFk+}UMaT7ZNq-oaaamFruDD${Mh&gAaxRdz-Hj}Dmf?41rJsSChuB2>zGm#-L`MI zV(C-18n3czv$cI`I=|*Z7?k8sCv0L8DTG+({TgiF*B1hHcWW-_Mv$O4}vTHlxiG60>Fz9@T&2;B~> zQ7DkCkx+{mqm^k17;LV=^1j;$qSd`IH7-(XGF$si1wN{9OJ#d9*|Dd!)F zy~#4KFF$)jNOhGZ3+XGjo1UfI8W47Ww8XRQB;izU7wbrS4YyPX6FN86jgm>hODv?G zg++x57IwxD7)cp8{Ri|C>(7wc#7%0=$<--HZDbWoOjYHjEhq9q!&*Z(MxGnCEN1w2 z8$O9UWtHzOb6s2NHI5x!)&x0|?(&JN`HjL{0Kh<=bm#B38JJVY0{GKe=FMY&4&Rds|VDb+R;zY?(vPshQN#?Xz3@Zt+PJ=!d>=&TTXWFGhtpaHXSAU z=IrYQT95}0c&hoiYG2iWQu4AlJsJs4o$n{iJVjl`@U)$pYkYvj!EsaNY1W~unt1vn zE$N`k?dPwA5>Btz{(Q}DZ^1@?B_=A=C^Bo}5t}_TqZF5x;3xp$GdZt74z^W-MV6&B zXl*;PUYH?I+!oaqj-M%=T|PCHq|)Q@2Xkss&?vI)@HG-0qtg zGis@$&118cLMy$xoII$o$EQsr?qBL0NQ#2?}1@|DkogE4vcIo5V*0jOvbu5g86ggmv6{a1gj(OS1?OB;#-sXBCvpFJm zexrh-TekzeJU41|bBz{@aoc>CwX5gVHdM18i`n07Kn|X>3+>El8pw*+%KJk;f@w!?xs&!82X zI{)mmfQiXBJq%iDe}lABKa{DaAZy(5w{`w(4O^+0xg=U2M08wd_Mb*@9b~h;|NjKN zG-=)!9CsG+@%3Q+J-L~}#G-5+ESYGzjsc-0LliyZ2cvJ0%@c##SfR>luurqFh7)W@BJAvJZvb7V@ zPo5GB!M=Dp%=SKIDy%b2O^ALq-Z3HV&L&OT&8X?kL@vEXJGuWXqRy{>R~;cZo|otA zbCkYjS*JP$@fRh30vS{Gvx$DHIY>5$K89{wHKc&1&d;`dTXdyebzz2!q~3OUAQUkl3YM40PQQS{`};k)!=eDQ4j(web<+1IVr;+`nmU|0Wxc%orQ zW0*F8pR>O{XKUTi9`d;uT?&k5v3C_puj?TxnXVngh}BV%s*=ygmUOQ z4P|o!wy1=ZO3}q$YF26f+T*8f+fSTfH>LknPROaMxKXA5B(3J^>z&L855vI}+kXNB z;?Q8|^CIL5Lu!!c>vae44UIPjFgLW|7R*ME8Sp^vc8DzJ5__iFCp`rIlKbxH_Xuw2B%AaxFLAkOHkyV_qi@|QW4I~qMjQ-!ThYeAy-Ogd)?QbWor8QvCxfZWn!-?O*SFi=qV&Xn ztofZve%j-^m+XINoiJ970U)|6`8fu3pf>Eez(i=5@+SGz9NO1B_iIx0TjS~cx_N%< z(?z(P1K+i}Y~Cp085jnzZcH*Clu@Rir=ve_F2qeqF&D&wf8m7ae3(8bwC(>n7ui|8chBX$rhAHe};tNHfZKEZeN*_VX7VW5n!#|3t4k z9=IU5zW<%QxA*;p()a!I^JUH*$^LfSA>pMXg57;SH?7}W-XUk(Bu|B3abF<Sqvg z%w<|BJe&6^LRmo)yWoaZt`wxz7R|lrx#cPd!OhEq=m+&0Qz#D1X{oAC2vZqP&jL}ugmK%1%i&+`h z+gfg14s0~M{j}+F>M(EUb51(;8%~(e$D70TT%I?cbcJIWrG@y2)TQZH&dzD#v}a45 zNT%6ov`G{;npX8JxniphECY+PgAdv2^Lo&pJ>A&@8Bag0i{^?;x0qIcv@=zue=bTJ zD*HbjsU70hF6_44fZAYI`pX>vyCMF6^8$#Eb^7>~d7stkimo5E@KX9} z-rOr+I$BcC=##$?k)tYqn63I0<3y-yQ=iRWY4;TkRi(JJILj903bs~)7awf>WjTAN z1`Qw3f{1RF7eIlEImQQI(K>-3i@eAPm!;Le+4VGC2xj1EVl#u&Xtn){8eb0V`4cav zwJqC^87vRRrp*`moJSwSr8}qCUtc1QGBv5bM(?vrdqK|2Tt%RNd5Irtu%sBG0_usU z2D99h*;tKxjxE~QD5_Tg^W5y+End*BYym~_?YC}q+6qmyPNx%?k*TcaB+fT(W~X+} z(U@K7I$rdh$4y5EMY?FL(*~#n9#c5WEB6-CwNu{5SR6DLB>1d|8 zX@(pytC~oDw6rpR^d*p|qt@P+^WCCjE4+!ayGp{~gxq8^^|n6qD$gf71M?K4?*`P( ziFL6zDn28JK}ECuik0-mS)_&T#c;TsLh}HHNGMp4IvJ8!;Flh%pu!u-HJvrE1V#9 zvX2t+yUMprmwY!&(P-GBa2gUNu0kpqhS z#X|S+5Y(t;^MH}d02i~=LxQX2=*kn8+-L3MQdt8b=oQDsyI~Ep>*)d|ZeuSjqo16~ zd#5bLpLp+oe#en}Q>U5uwt6W>vR&?(9ci-<3%U)A8>=nx!XHu$w*I@SJskK6uwd&M zMFKxdYS=Cpr|YyTi-Xjti?19M6|evN=_@-*H$9h7gjraIb(n{%Fb$J%9xg{&%m>2S z3k!VY#z=~bu$F~5ddMFl=)_W#P@z{~>Q?tpuy9>}J}WQ8n+##m&&x`G4nt_1`}z4P z-GSX~@OPPtUrCB@T8aE-)xDz6dZ#Gyx$m)p9ZpA@XD!?E}GF2f|?TjxlJp^a(!8vXjz1y_CgD&C69< zen=eU_{Qf2Zr$=008oTaE6FE*h!>ofOKhlrDASC+6w++VD=CgX)a3-7w+;2@Syd6V zG~Qji;iXPQTm;2jF-)=WoF&R7V4pM>Y=P_cIcCHP%Nx7b?nX~FkWY0jzOlnJtKQe; zxs&$Pyc{7Tn;i}%h`t|ke7(VbdkD^fc;cPVJ>eSPJ^zqrs|5a5XUVFjlpGa@MFzBg zo4vkX&y%WVzbFOGC9LkO{Fr6%_xkD{Tg3fUKRB-3|Qz z*9Rw|XEq*Z^nemVI5!%{7V)Jht*EPQs*H`Y0~jgOSZtqh2?uXkb?~brNL8eNwzJB| z?~WjWk=W$7Zpi{=s%Ojd5?W~N(6KnUMVFCG(3;TCDr%*3 zU@Xoz*@{iPR0-Z@04NF7WG=qai`iNN=Bv{9dRfdL zLsP1X)1=a#MPn>HfBnZRi-y6|gQ;vLMjkU~dV-GzDfPM8F=?ogTEyQ+rCy5L}h0koe_kjlemm>s6h7tRv40&+;O= zI~at_qRd`~!MAOA1c_{a_4FZ3YTm2M9&QDdP6`+;tFuVp|9XI8%dEGCk{LNTzk)T0 zJoueGExav=YNb$)UX5g z^j;~RkKhFxVsC7hV6Mj+DyuCa1YCrSz08MCnX|(mDO1kE)?JAwMB$L&uV#B8j3RP& z)m5p&Rk?R}0H7B~H9opNrgmu-_6GP~pyM&^h{`x0^4Aw zruxlw74Kr^UCn96-~K^k*3W|Nh$r^B=_=Ne*cOn*JM0@s?1D9a!kz<_lz;RtrdzL= zcS>v(<^z%lIFL!DSI*F=0gaqa@~J?Y1^$ke#_85Ao^fJ-WsKD*(=e0Uq2&$nY7M8* zNc*iuuO65@nWR(Zyu=iZ$!0T|2HO#PW;HXiRwru~UB_s2CfLdOb{qJ4h@%N2{8v3` z$*0vPzI^YUcs3Ou2NCZj<8OCw+pSm?IoEeMqlGg%A^TLZ90C~5A)7q3T~m>ZE?4A*)IJp7>Q*kx4uj~%_YyvpEaJUWdIIfW+S}Wk%^vRy zk#SXC-2SC_U*J8wvka(L8g*`WlhL*f9s?LuDPOUXF}VqVnbBQ+Bzs}r)QBtbaS zar$d>&q~A&(Z(MoAvdu^Gx7E{`UV{Hr_vdJYK{_StWkC6f*8Vqjutpv@kFMwCaEs% zUe%s8TWk`p07JBftTK#nh~cTs6tH%6N&9aRrxt*w@*MW~?c1Y8yihXwZII1xd$$8K z)t@B2KkoN_8}$AjOYJtQ%(^lBItNn^K&j+d0>FsMTOo{uI_Na-5xr z;MQ~#5#4fBGS&~@oaTFiy%2As5_`9Q9WYi5X=V&*9*y*Uws1-qkvPS3eS zmbuzoJ=$H$3YT!Pq^6umpi;a|U> z{q;N78^*)K{@^AuevKS@LubOZ8Mkh=D?)6=2cST-LoL(PyktQHVj;~8R^BoeMB|D) zWtR37*49eE{#U`d9J+#`vEoV~@_}>zR}t4LslX(`KIo2h#5-&@-h@qm2K%0(g{PrF zt4sD4H`nZF9p-JVBX!pr$Ink~yJCyQY#Vtz(QOK~uqkxAMUc~N79R#bDW+i&h%>H} ztHxHWF`jWF6(Lqo4J51qaqJa%>}A1<^f9OzhpuC?Y>3V=%M+vXnD$(J#%kO_NCn~8 zTW2p8yd3|6V*FPSYD-#wA}C>j=RNQ1K`oL<&#@#c3xjbd&6*D0Jf#C z%J;BYP~u_VPmA+)jh`5FX0a?UqTXRRKZW!ES+=O@Y1%=E*vAS&J9z;R=IL|T=cf_j zB~N)=uHdw%uBvSHlqCWdq*SXa;m=lqm}+>0t-yYQ<6=RR0e@qE7y=q9;HRpC*n-4W zmd~qyVkhD(#x_SPIo|VuQ%`=v7E|=hLO*_DzV`gAF9v*X012?mah~vpK0fXHb(XzP z6DlF6L(67^#{_HeGzhlG+1Lbd>gTOn1K1~YXHHGKNYs~&Z-HC4KA<&&<uC1H|L_^kvv5UhB znT9z`IKXwEofB*`qQR z`1gV@{LvsFf{2vp??46PzZXdV;AooUQ)sH9CQw;b$tBhn<_vl21v`aswTZDxW5JsH z3>%>1betJGCPJJE>m1g3Z-`i&BTCf$^*Q1PyY$S||5#{ms8OP~ZO6sgX2Y@X)-C>{ zvGA&yORbrI!BIVap46xPd6pwZi0A{hGE9wrnw%)C@75unBBFsk*f_Ut<<(=<E|_ASayW|hqCsoVs5$EC~RZ*`Q9@@_Zq z3y}X|u@D;g15^nTPH6oCNIUT{6|C%mqmI|rPsxYcZU?N8fV%8XFwGzQy6e3u z?h951o4bjwD(Jr}VdA~8;|17&*Yy!^AFWp93RUjO{5`B4;$GOIEZrK1`*Q|%mQQM! zc^{{LGNca}gI4Ug4SgT;5*o)Nl0KE|`Bn8H+hWx}wWSM*@nJENl%fu@nE0e)8045V zcgVSr;$`B!^}6`QwI{Iri~J<6IdLdgDF%9eiRyr7S%DT(-B+Pms9(WZG|#%;#_Jxu zNw0?C;r4(hYJk2s8NGy*Nr3`cW3zrGMhkv_{mR@(#(s|ALxqHXg_JEmn5Rj^DH(i> zbHS!XX|~Mjtdr|3o5nA`!pV~)iH1gGO#^$TW5d{Th*T~SZ@tj#dBFUunlG@X;3OH_ zRsqR??V=c4R-lTZm&s}x@ZiJPQkcc!><1jD{O)jy_+E?)tsISelpPJY<4ye9uh?#X z^5Fy*TL=mYXPi!shcoO;dBPxJJohVr5cUCl^@hO=1l{+etk>JFq~i{84r+L>6{#f< zP)(5IZrUYZ2}84Oa1Kz51`Xx?x5;d_3Rl_h>wE?C+CN|?;(^zN1N9?%#4uG6kZ1uH z^{N2-s3Dp>5sBK*aWlNc6AB~kBV z|2euu;FzBgyvWY2@)W(RP~c+{AwN7>37-uNJ!|kK65N9UUglt)2<&yWyh4R#hn4J$ zR`hfO^#s;`9nO~+ zwV5*=^H!{6t;q=HNYDF4VoB)n`%nO=UIK5h6lKlj?X+`=-b6u2uo6*vg)|%%oTmkm zFLpeB(h6yN`A4>*T$+Hf2`tf85=Q8p4%~R6!@?LMt0#aWXvh@NF(Qo{>>s228%BH%s@kBd4nTk}YX6kXp&UgG{ zHav}(=%N~WrX8MeCS7gy6BLyRbR1>z6CgJsB0qzK4jjjE@=rRz8m8fY+#(|R*ni47 za**y_JT-cM5N{p*Bv^M%jQ+_WOm&~jem)%Zz`{>F;NgK)5;Du!gMYlp10E`yGQM6l z^;EFCS}TMr&`hOh-SdB_&*6d&=6Ab^gztiZ4kk5WtL(GLH{ zH!QUj)&I{1%N~1PS8?Tk0SZdJTpXl8wU4As;IGET*z4k$B0L~jwe#}A9}Yss_9q|V z5UnuU1?Ruu$Y(|ue;9PNm4Bp^HS{idoR1oqnFIc~eBo()IjU-5(V@(m=t0F04n8t8 zx;pCp3jjQzh-}f}6q_tqD}}2GS`0=4NF5*aIb+w_bd4&1aXIXFI&&oKK5r(I zH`SZt=>g)S=8rnryqR)u)JV&C^M<9VR{t<}rD%ASGj1`92SAL)nvRO2Y?Og$1!KhB ziQFITQSlYg*E`y{5`W}GRIHyBAdP5RwzulWSjoZvQxA+2uTX!2pHd&F?bF{{_bGJr zHPDLMnEN0s30V4nceD8ePa67-gf}wF3KbN|@Y>XU&GnZqy)a0oWpRQvnBvMu#YMek zyXG#9KglUX;ZyWshN;M5vw$d?_v@^};-di146$-aj%3QL66U>l=ukuaF81gvLT-{u zGG#%jH7zIV2F68{X%qQ3VE^qH*82kFHz%1*fO%W zN$(Bx`0uaxyW_qeY$k7}SKBFWj5lw-zNK%Df0<$w^KNRMf^@zk6%D;&eKyNhni&Mo zu~>r~mZd;{#6#r?5)4!KUcg?M!BhhU0WL)W@^=OZ!lSpv<^Y)Kix~ewt7e$t0>cO8 z>GY$n1zvE5?AEQ7Kf~3%b!*0!7nrTL2{fy77+Gzy=0cf;|McOQ!rbmK90U~m5EATd zQdkXesrC%@zZH|0#n%MQIR(akm_|nWGrlb{^vR}w4F$&t(uy>pC^J*7re;dn)${Qw z$UBuEsJq*w zNx!ClVHgXLR(sY+;pf9);{vklZCd*YT}|mAu53sI6d;Q~hyPHglnKwj<_rq@ZfgiU zyQ*WRoOMyF>4LdYSR?YQ+TtVkv=dYEg2Z6j)GiAk6*!Ev`}Kj?3qgk3RK;H6RTkp} z)gZ%@R*=a()u`-KY*t+voDxY1kreeWvjqKr_cLa_+QmA1GI2>w|KLwm+3GGloQL5(w{)y&@Bph)cIS6DT&Mb7FIa`Yydv7}#N z3JPxW*Gm2}pe1JcAB?jPEA~;*$BKQdi05z2qDk9*ue;(((hY9Vz&ILgJc=8wg)OVs z=%q4x`MRx}T}|Y!CNz_8tqD%3+({&V<+^pNhu(i^ESE-b(rgry*ZK6`0C-jWaWou` zU*}OV`3Q+aOoSgtD6CIjqo9V)7#%cBnv!=x_>leT`2tr;yuXutc5lF z3WBRDX32vo>~;3@5N(Zn!x3qJ^taNHq7tVYs>E~`g+1mVzMkBfGI$sazqw%e&4S?$ z!mx_r*CDL7hi1FqI6QX$s~!E5?_@4a#Jfr|NWY!(yA8PjBEt9t2g_ zUje89sh`l_a8^qNu2D^McA&GG=`O$KeUf{E>0%KVW9mFJ4DQ{6mMZdp=h#XpN{D{A zwVi8wRR-SQCFjG(tMZH-Q6BTK+sNza=l7ZN5+c-Nkd_JpGgrVo91M<7V@x8yG?SMo zKs|=x{7O6nUhqWaolF6mTxy1Yh5B(rD06$YUDJQY1vmqQ3_;Kn@nq2a2J{pD1V6@i zzWXk^^W9y|Pr%>;zCqG|1>M%)02F)Vvkz$l^l{OY#pfC;bz-nm+U$QY#j5!GZq_T{ z%=N$T;_QUvs4axjOF!sk!8hOYIp|g0yr<#W!&+A>kfMqx3A9!8a;OL7g!;q$FpY=Z z@ArMQ-gV3FS~@-)#VIf}aSh}$iD7P5K{pMe^oXX3a=Mt4_9y{=5ED&X@EwF#IJ#&R zrh=|UiN>!#ZwinEjpT+&I}~e<8pJj8reNeNfb`(|peyx7!=q#j5}{}T0M6s2dyGO5 zHWoz5(XrLR*oPuLJ2g~|bcZk^^@%OQz%GEUM|nu&tF$p4TdOBm6I#UIFjM#?6v#AV zy}Vn&I5gY7Y{c?^xT=LoZJb4#%gKdCPShst7v+Vowg*sxb(NtoF)12*A{0r_88u{w4Iqckt7+3TC<7&47aFngP_!y%6^h%tkd3r4WXM=wFX!T5fS->*d3R6D7w z7$*$NAd8XXzh)W4)Cy1WmeU@+H{gVNi+D0HYEnDYcWlppkN`3^r;4$dcaAax_-s1r zcC�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ŗ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


'.$weblangs->trans("SorryWebsiteIsCurrentlyOffLine").'
'; + exit; +} diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang index 72b73d1c479..f01494fcdac 100644 --- a/htdocs/langs/en_US/website.lang +++ b/htdocs/langs/en_US/website.lang @@ -77,6 +77,7 @@ BackToListOfThirdParty=Back to list for Third Party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=Another container +SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please comme back later... WEBSITE_USE_WEBSITE_ACCOUNTS=Enable the web site account table WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Enable the table to store web site accounts (login/pass) for each website / third party YouMustDefineTheHomePage=You must first define the default Home page From 8e0a0232701fafab8ccd3866ac3b4b9f643cb3e9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 05:03:45 +0200 Subject: [PATCH 123/228] FIX Disabling a website does not put it offline --- htdocs/core/website.inc.php | 8 ++++++++ htdocs/langs/en_US/website.lang | 1 + 2 files changed, 9 insertions(+) diff --git a/htdocs/core/website.inc.php b/htdocs/core/website.inc.php index 4114fff00b7..44c5d89097a 100644 --- a/htdocs/core/website.inc.php +++ b/htdocs/core/website.inc.php @@ -93,3 +93,11 @@ if ($_SERVER['PHP_SELF'] != DOL_URL_ROOT.'/website/index.php') // If we browsing } } } + +// Show off line message +if (! defined('USEDOLIBARREDITOR') && empty($website->status)) +{ + $weblangs->load("website"); + print '


'.$weblangs->trans("SorryWebsiteIsCurrentlyOffLine").'
'; + exit; +} diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang index 433e35e2d1b..e25e72ab791 100644 --- a/htdocs/langs/en_US/website.lang +++ b/htdocs/langs/en_US/website.lang @@ -76,6 +76,7 @@ BackToListOfThirdParty=Back to list for Third Party DisableSiteFirst=Disable website first MyContainerTitle=My web site title AnotherContainer=Another container +SorryWebsiteIsCurrentlyOffLine=Sorry, this website is currently off line. Please comme back later... WEBSITE_USE_WEBSITE_ACCOUNTS=Enable the web site account table WEBSITE_USE_WEBSITE_ACCOUNTSTooltip=Enable the table to store web site accounts (login/pass) for each website / third party YouMustDefineTheHomePage=You must first define the default Home page From 172271c98af60d1f6117213b4905694aa96e12df Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 05:22:49 +0200 Subject: [PATCH 124/228] FIX USEDOLIBARREDITOR not always set --- htdocs/website/index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 0e9724b66c4..9017e7b4464 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -23,6 +23,7 @@ define('NOSCANPOSTFORINJECTION', 1); define('NOSTYLECHECK', 1); +define('USEDOLIBARREDITOR', 1); header('X-XSS-Protection:0'); @@ -3200,7 +3201,6 @@ if ($action == 'preview' || $action == 'createfromclone' || $action == 'createpa // If mode WEBSITE_SUBCONTAINERSINLINE is on if (! empty($conf->global->WEBSITE_SUBCONTAINERSINLINE)) { - define('USEDOLIBARREDITOR', 1); //var_dump($filetpl); $filephp = $filetpl; ob_start(); From 52d34edb03a052a405612d315d31818a953b68ae Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 05:22:49 +0200 Subject: [PATCH 125/228] FIX USEDOLIBARREDITOR not always set --- htdocs/website/index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 1a7a07ba18d..3362983de62 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -23,6 +23,7 @@ define('NOSCANPOSTFORINJECTION', 1); define('NOSTYLECHECK', 1); +define('USEDOLIBARREDITOR', 1); header('X-XSS-Protection:0'); @@ -3009,7 +3010,6 @@ if ($action == 'preview' || $action == 'createfromclone' || $action == 'createpa // If mode WEBSITE_SUBCONTAINERSINLINE is on if (! empty($conf->global->WEBSITE_SUBCONTAINERSINLINE)) { - define('USEDOLIBARREDITOR', 1); //var_dump($filetpl); $filephp = $filetpl; ob_start(); From 277a693c1667d14ebe7f5ef65afa0583f754c08d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 06:37:06 +0200 Subject: [PATCH 126/228] FIX Add log and type of content in dolWebsiteOutput and dolWebsiteReplacementOfLinks --- htdocs/core/lib/website.lib.php | 20 ++++++++++++++------ htdocs/core/website.inc.php | 1 + htdocs/website/index.php | 8 ++++---- 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 405a0687eae..c1070ce325c 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -36,6 +36,8 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0) { $nbrep = 0; + dol_syslog('dolWebsiteReplacementOfLinks start', LOG_DEBUG); + // Replace php code. Note $content may come from database and does not contains body tags. $replacewith='...php...'; if ($removephppart) $replacewith=''; @@ -90,6 +92,8 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0) $content=preg_replace('/(href=")(\/?document\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); $content=preg_replace('/(src=")(\/?document\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); + dol_syslog('dolWebsiteReplacementOfLinks end', LOG_DEBUG); + return $content; } @@ -176,16 +180,17 @@ function dolKeepOnlyPhpCode($str) * Render a string of an HTML content and output it. * Used to ouput the page when viewed from server (Dolibarr or Apache). * - * @param string $content Content string + * @param string $content Content string + * @param string $contenttype Content type * @return void * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context when USEDOLIBARREDITOR is not on */ -function dolWebsiteOutput($content) +function dolWebsiteOutput($content, $contenttype='html') { global $db, $langs, $conf, $user; global $dolibarr_main_url_root, $dolibarr_main_data_root; - dol_syslog("dolWebsiteOutput start (USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')'); + dol_syslog("dolWebsiteOutput start (contenttype=".$contenttype." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')'); // Define $urlwithroot $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root)); @@ -195,9 +200,12 @@ function dolWebsiteOutput($content) if (defined('USEDOLIBARREDITOR')) // REPLACEMENT OF LINKS When page called from Dolibarr editor { // We remove the part of content - $content = preg_replace('/.*<\/head>/ims', '', $content); - $content = preg_replace('/^.*]*)*>/ims', '', $content); - $content = preg_replace('/<\/body(\s[^>]*)*>.*$/ims', '', $content); + if ($contenttype == 'html') + { + $content = preg_replace('/.*<\/head>/ims', '', $content); + $content = preg_replace('/^.*]*)*>/ims', '', $content); + $content = preg_replace('/<\/body(\s[^>]*)*>.*$/ims', '', $content); + } } elseif (defined('USEDOLIBARRSERVER')) // REPLACEMENT OF LINKS When page called from Dolibarr server { diff --git a/htdocs/core/website.inc.php b/htdocs/core/website.inc.php index 44c5d89097a..cf9b76a7be1 100644 --- a/htdocs/core/website.inc.php +++ b/htdocs/core/website.inc.php @@ -98,6 +98,7 @@ if ($_SERVER['PHP_SELF'] != DOL_URL_ROOT.'/website/index.php') // If we browsing if (! defined('USEDOLIBARREDITOR') && empty($website->status)) { $weblangs->load("website"); + http_response_code(503); print '


'.$weblangs->trans("SorryWebsiteIsCurrentlyOffLine").'
'; exit; } diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 9017e7b4464..7caf5a8aac4 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -1031,7 +1031,7 @@ if ($action == 'updatecss') $csscontent.= GETPOST('WEBSITE_CSS_INLINE', 'none'); $csscontent.= "\n".'"."\n"; dol_syslog("Save css content into ".$filecss); @@ -1064,7 +1064,7 @@ if ($action == 'updatecss') $jscontent.= GETPOST('WEBSITE_JS_INLINE', 'none'); $jscontent.= "\n".'"."\n"; dol_syslog("Save js content into ".$filejs); @@ -1097,7 +1097,7 @@ if ($action == 'updatecss') $robotcontent.= GETPOST('WEBSITE_ROBOT', 'none'); /*$robotcontent.= "\n".'"."\n";*/ dol_syslog("Save file robot into ".$filerobot); @@ -1147,7 +1147,7 @@ if ($action == 'updatecss') $manifestjsoncontent.= GETPOST('WEBSITE_MANIFEST_JSON', 'none'); $manifestjsoncontent.= "\n".'"."\n"; dol_syslog("Save file manifest.json.php into ".$manifestjsoncontent); From 99473097a911227964667fb514067b86dfee3476 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 06:37:06 +0200 Subject: [PATCH 127/228] FIX Add log and type of content in dolWebsiteOutput and dolWebsiteReplacementOfLinks Conflicts: htdocs/website/index.php --- htdocs/core/lib/website.lib.php | 20 ++++++++++++++------ htdocs/core/website.inc.php | 1 + htdocs/website/index.php | 7 +++---- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 29a2ab27d8f..510539f7421 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -36,6 +36,8 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0) { $nbrep = 0; + dol_syslog('dolWebsiteReplacementOfLinks start', LOG_DEBUG); + // Replace php code. Note $content may come from database and does not contains body tags. $replacewith='...php...'; if ($removephppart) $replacewith=''; @@ -90,6 +92,8 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0) $content=preg_replace('/(href=")(\/?document\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); $content=preg_replace('/(src=")(\/?document\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); + dol_syslog('dolWebsiteReplacementOfLinks end', LOG_DEBUG); + return $content; } @@ -176,16 +180,17 @@ function dolKeepOnlyPhpCode($str) * Render a string of an HTML content and output it. * Used to ouput the page when viewed from server (Dolibarr or Apache). * - * @param string $content Content string + * @param string $content Content string + * @param string $contenttype Content type * @return void * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context when USEDOLIBARREDITOR is not on */ -function dolWebsiteOutput($content) +function dolWebsiteOutput($content, $contenttype='html') { global $db, $langs, $conf, $user; global $dolibarr_main_url_root, $dolibarr_main_data_root; - dol_syslog("dolWebsiteOutput start (USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')'); + dol_syslog("dolWebsiteOutput start (contenttype=".$contenttype." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')'); // Define $urlwithroot $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root)); @@ -195,9 +200,12 @@ function dolWebsiteOutput($content) if (defined('USEDOLIBARREDITOR')) // REPLACEMENT OF LINKS When page called from Dolibarr editor { // We remove the part of content - $content = preg_replace('/.*<\/head>/ims', '', $content); - $content = preg_replace('/^.*]*)*>/ims', '', $content); - $content = preg_replace('/<\/body(\s[^>]*)*>.*$/ims', '', $content); + if ($contenttype == 'html') + { + $content = preg_replace('/.*<\/head>/ims', '', $content); + $content = preg_replace('/^.*]*)*>/ims', '', $content); + $content = preg_replace('/<\/body(\s[^>]*)*>.*$/ims', '', $content); + } } elseif (defined('USEDOLIBARRSERVER')) // REPLACEMENT OF LINKS When page called from Dolibarr server { diff --git a/htdocs/core/website.inc.php b/htdocs/core/website.inc.php index 44c5d89097a..cf9b76a7be1 100644 --- a/htdocs/core/website.inc.php +++ b/htdocs/core/website.inc.php @@ -98,6 +98,7 @@ if ($_SERVER['PHP_SELF'] != DOL_URL_ROOT.'/website/index.php') // If we browsing if (! defined('USEDOLIBARREDITOR') && empty($website->status)) { $weblangs->load("website"); + http_response_code(503); print '


'.$weblangs->trans("SorryWebsiteIsCurrentlyOffLine").'
'; exit; } diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 3362983de62..f58b2200daf 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -975,7 +975,7 @@ if ($action == 'updatecss') $csscontent.= GETPOST('WEBSITE_CSS_INLINE', 'none'); $csscontent.= "\n".'"."\n"; dol_syslog("Save css content into ".$filecss); @@ -1008,7 +1008,7 @@ if ($action == 'updatecss') $jscontent.= GETPOST('WEBSITE_JS_INLINE', 'none'); $jscontent.= "\n".'"."\n"; dol_syslog("Save js content into ".$filejs); @@ -1041,7 +1041,7 @@ if ($action == 'updatecss') $robotcontent.= GETPOST('WEBSITE_ROBOT', 'none'); /*$robotcontent.= "\n".'"."\n";*/ dol_syslog("Save file robot into ".$filerobot); @@ -1090,7 +1090,6 @@ if ($action == 'updatecss') setEventMessages('Failed to write file '.$filehtaccess, null, 'errors'); } - // Message if no error if (! $error) { From 7891c8d8568519e57288482a8fad44d89b8da562 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 06:52:07 +0200 Subject: [PATCH 128/228] Enhance logs --- htdocs/core/lib/website.lib.php | 5 +++-- htdocs/website/index.php | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index c1070ce325c..ebfceab89d9 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -29,14 +29,15 @@ * @param Website $website Web site object * @param string $content Content to replace * @param int $removephppart 0=Replace PHP sections with a PHP badge. 1=Remove completely PHP sections. + * @param string $contenttype Content type * @return boolean True if OK * @see dolWebsiteOutput() for function used to replace content in a web server context */ -function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0) +function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype='html') { $nbrep = 0; - dol_syslog('dolWebsiteReplacementOfLinks start', LOG_DEBUG); + dol_syslog('dolWebsiteReplacementOfLinks start (contenttype='.$contenttype." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')', LOG_DEBUG); // Replace php code. Note $content may come from database and does not contains body tags. $replacewith='...php...'; diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 7caf5a8aac4..35b5444e0b2 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -3154,7 +3154,7 @@ if ($action == 'preview' || $action == 'createfromclone' || $action == 'createpa }*/ $out.="\n\n"; $out.="\n"; - $out.=dolWebsiteReplacementOfLinks($object, $objectpage->htmlheader, 1); + $out.=dolWebsiteReplacementOfLinks($object, $objectpage->htmlheader, 1, 'htmlheader'); $out.="\n"; $out.="\n"; @@ -3172,7 +3172,7 @@ if ($action == 'preview' || $action == 'createfromclone' || $action == 'createpa include $filecss; $csscontent = ob_get_contents(); ob_end_clean(); - $tmpout.= dolWebsiteReplacementOfLinks($object, $csscontent, 1); + $tmpout.= dolWebsiteReplacementOfLinks($object, $csscontent, 1, 'css'); $tmpout.= '/* Include style from the HTML header of page */'."\n"; // Clean the html header of page to get only )', $objectpage->htmlheader); From 91cdb2a5a8c026c0a372860204ba23a745a62ccc Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 07:05:06 +0200 Subject: [PATCH 129/228] Add more logs --- htdocs/core/lib/website.lib.php | 7 ++++--- htdocs/core/lib/website2.lib.php | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index ebfceab89d9..7e813caa5d6 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -183,15 +183,16 @@ function dolKeepOnlyPhpCode($str) * * @param string $content Content string * @param string $contenttype Content type + * @param string $contentlabel Content label * @return void * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context when USEDOLIBARREDITOR is not on */ -function dolWebsiteOutput($content, $contenttype='html') +function dolWebsiteOutput($content, $contenttype='html', $contentlabel='') { global $db, $langs, $conf, $user; global $dolibarr_main_url_root, $dolibarr_main_data_root; - dol_syslog("dolWebsiteOutput start (contenttype=".$contenttype." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')'); + dol_syslog("dolWebsiteOutput start (contenttype=".$contenttype." contentlabel=".$contentlabel." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')'); // Define $urlwithroot $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root)); @@ -294,7 +295,7 @@ function dolWebsiteOutput($content, $contenttype='html') * * @param string $content Content string * @return void - * @see dolWebsiteOutput + * @see dolWebsiteOutput() */ /* function dolWebsiteSaveContent($content) diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php index a67c0f9f142..53f9e5f11c9 100644 --- a/htdocs/core/lib/website2.lib.php +++ b/htdocs/core/lib/website2.lib.php @@ -138,7 +138,7 @@ function dolSavePageContent($filetpl, $object, $objectpage) $tplcontent.= ''."\n"; $tplcontent.= 'id.');'."\n"; $tplcontent.= "// END PHP ?>"."\n"; //var_dump($filetpl);exit; From 49e61e237c9593a1938a98aa4b2fbd7c5f854e45 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 07:08:45 +0200 Subject: [PATCH 130/228] Better log --- htdocs/core/lib/website.lib.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 7e813caa5d6..4d89210cd44 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -183,16 +183,16 @@ function dolKeepOnlyPhpCode($str) * * @param string $content Content string * @param string $contenttype Content type - * @param string $contentlabel Content label + * @param int $containerid Contenair id * @return void * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context when USEDOLIBARREDITOR is not on */ -function dolWebsiteOutput($content, $contenttype='html', $contentlabel='') +function dolWebsiteOutput($content, $contenttype='html', $containerid='') { global $db, $langs, $conf, $user; global $dolibarr_main_url_root, $dolibarr_main_data_root; - dol_syslog("dolWebsiteOutput start (contenttype=".$contenttype." contentlabel=".$contentlabel." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')'); + dol_syslog("dolWebsiteOutput start (contenttype=".$contenttype." containerid=".$containerid." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')'); // Define $urlwithroot $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root)); From 056f51bfc559678c965082d56d616d38fa7271e4 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Tue, 13 Aug 2019 07:14:42 +0200 Subject: [PATCH 131/228] FIX duplicate css tag, decrease padding-bottom for boxes in eldy theme --- htdocs/theme/eldy/global.inc.php | 10 ++++------ htdocs/theme/md/style.css.php | 9 +++------ 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/htdocs/theme/eldy/global.inc.php b/htdocs/theme/eldy/global.inc.php index a137b91236f..4df7a6ba014 100644 --- a/htdocs/theme/eldy/global.inc.php +++ b/htdocs/theme/eldy/global.inc.php @@ -3080,6 +3080,10 @@ ul.noborder li:nth-child(even):not(.liste_titre) { .box { overflow-x: auto; min-height: 40px; + padding-right: 0px; + padding-left: 0px; + /*padding-bottom: 25px;*/ + padding-bottom: 10px; } .ficheaddleft div.boxstats, .ficheaddright div.boxstats { border: none; @@ -3266,12 +3270,6 @@ a.valignmiddle.dashboardlineindicator { line-height: 30px; } -.box { - padding-right: 0px; - padding-left: 0px; - padding-bottom: 25px; -} - tr.box_titre { height: 26px; diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 8999a73aaea..704610eca82 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -3344,6 +3344,9 @@ ul.noborder li:nth-child(even):not(.liste_titre) { .box { overflow-x: auto; min-height: 40px; + padding-right: 0px; + padding-left: 0px; + padding-bottom: 12px; } .ficheaddleft div.boxstats, .ficheaddright div.boxstats { border: none; @@ -3470,12 +3473,6 @@ a.valignmiddle.dashboardlineindicator { line-height: 30px; } -.box { - padding-right: 0px; - padding-left: 0px; - padding-bottom: 12px; -} - tr.box_titre { height: 26px !important; From 34579dd4dbdfb80fb1789b35163a04fa35a1df8e Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Tue, 13 Aug 2019 07:46:03 +0200 Subject: [PATCH 132/228] FIX phpcs --- htdocs/core/lib/website.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 510539f7421..b745956d3ca 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -185,7 +185,7 @@ function dolKeepOnlyPhpCode($str) * @return void * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context when USEDOLIBARREDITOR is not on */ -function dolWebsiteOutput($content, $contenttype='html') +function dolWebsiteOutput($content, $contenttype = 'html') { global $db, $langs, $conf, $user; global $dolibarr_main_url_root, $dolibarr_main_data_root; From b443b1b37284812af0d7fb16ec5d3fb7ae659542 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 14:21:43 +0200 Subject: [PATCH 133/228] FIX permission check on API intervention --- htdocs/fichinter/class/api_interventions.class.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/fichinter/class/api_interventions.class.php b/htdocs/fichinter/class/api_interventions.class.php index 2702ad6c55e..9e1d717d36a 100644 --- a/htdocs/fichinter/class/api_interventions.class.php +++ b/htdocs/fichinter/class/api_interventions.class.php @@ -80,7 +80,7 @@ class Interventions extends DolibarrApi $result = $this->fichinter->fetch($id); if( ! $result ) { - throw new RestException(404, 'Intervention report not found'); + throw new RestException(404, 'Intervention not found'); } if( ! DolibarrApi::_checkAccessToResource('fichinter', $this->fichinter->id)) { @@ -174,10 +174,10 @@ class Interventions extends DolibarrApi } } else { - throw new RestException(503, 'Error when retrieve fichinter list : '.$db->lasterror()); + throw new RestException(503, 'Error when retrieve intervention list : '.$db->lasterror()); } if( ! count($obj_ret)) { - throw new RestException(404, 'No finchinter found'); + throw new RestException(404, 'No intervention found'); } return $obj_ret; } @@ -200,7 +200,7 @@ class Interventions extends DolibarrApi } if ($this->fichinter->create(DolibarrApiAccess::$user) < 0) { - throw new RestException(500, "Error creating fichinter", array_merge(array($this->fichinter->error), $this->fichinter->errors)); + throw new RestException(500, "Error creating intervention", array_merge(array($this->fichinter->error), $this->fichinter->errors)); } return $this->fichinter->id; @@ -301,7 +301,7 @@ class Interventions extends DolibarrApi throw new RestException(404, 'Intervention not found'); } - if( ! DolibarrApi::_checkAccessToResource('commande', $this->fichinter->id)) { + if( ! DolibarrApi::_checkAccessToResource('fichinter', $this->fichinter->id)) { throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); } From b90815b972eff2168203148421e27e4b638fdef3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= <613615+jtraulle@users.noreply.github.com> Date: Tue, 13 Aug 2019 16:36:41 +0200 Subject: [PATCH 134/228] FIX require product class (fixes POST /supplierinvoices REST API endpoint) When passing a fk_product field into a supplier invoice line on the POST /supplierinvoices REST API endpoint, we need to require the product class first in fournisseur.facture.class.php to be able to load the Product from the passed id. --- htdocs/fourn/class/fournisseur.facture.class.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index 41ac2f126a7..132fcbc9e47 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -36,6 +36,7 @@ include_once DOL_DOCUMENT_ROOT.'/core/class/commoninvoice.class.php'; require_once DOL_DOCUMENT_ROOT.'/multicurrency/class/multicurrency.class.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; /** * Class to manage suppliers invoices From e3bca063a004851de5bf93094aa07a9335d1f5e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= <613615+jtraulle@users.noreply.github.com> Date: Tue, 13 Aug 2019 17:06:46 +0200 Subject: [PATCH 135/228] Fix CI code style checks Not my fault but I am disciplined so, if the CI says it is an error ... I just fix it to get green again ;) --- htdocs/core/lib/website.lib.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 4d89210cd44..579c5575988 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -33,7 +33,7 @@ * @return boolean True if OK * @see dolWebsiteOutput() for function used to replace content in a web server context */ -function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype='html') +function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype = 'html') { $nbrep = 0; @@ -187,7 +187,7 @@ function dolKeepOnlyPhpCode($str) * @return void * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context when USEDOLIBARREDITOR is not on */ -function dolWebsiteOutput($content, $contenttype='html', $containerid='') +function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') { global $db, $langs, $conf, $user; global $dolibarr_main_url_root, $dolibarr_main_data_root; From df5382642603a9c3b115ecba0757bdc27c52f9fe Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 18:22:18 +0200 Subject: [PATCH 136/228] FIX Missing some replacements in website module --- htdocs/core/lib/website.lib.php | 6 +++++- htdocs/website/index.php | 3 ++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 4d89210cd44..3a6a580d43f 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -93,6 +93,9 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c $content=preg_replace('/(href=")(\/?document\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); $content=preg_replace('/(src=")(\/?document\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); + // Fix relative link /viewimage.php with correct URL after the DOL_URL_ROOT: ...href="/viewimage.php?modulepart=" + $content=preg_replace('/(url\(")(\/?viewimage\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); + dol_syslog('dolWebsiteReplacementOfLinks end', LOG_DEBUG); return $content; @@ -185,7 +188,7 @@ function dolKeepOnlyPhpCode($str) * @param string $contenttype Content type * @param int $containerid Contenair id * @return void - * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context when USEDOLIBARREDITOR is not on + * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context. */ function dolWebsiteOutput($content, $contenttype='html', $containerid='') { @@ -228,6 +231,7 @@ function dolWebsiteOutput($content, $contenttype='html', $containerid='') // Fix relative link /viewimage.php with correct URL after the DOL_URL_ROOT: href="/viewimage.php?modulepart=" => href="/dolibarr/viewimage.php?modulepart=" $content=preg_replace('/(href=")(\/?viewimage\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); $content=preg_replace('/(src=")(\/?viewimage\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); + $content=preg_replace('/(url\(")(\/?viewimage\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); // Fix relative link into medias with correct URL after the DOL_URL_ROOT: ../url("medias/ $content=preg_replace('/url\((["\']?)medias\//', 'url(\1'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 35b5444e0b2..8ac8de1a5ca 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -3057,9 +3057,10 @@ if ($action == 'replacesite' || $action == 'replacesiteconfirm') print '
'; print ''; print ''; + print ''; - print ''."\n"; + print ''."\n"; print '

'; print load_fiche_titre($langs->trans("ReplaceWebsiteContent")); From 53b43eb98a7681957c6ddfac94a44cabf9d0ba52 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 19:34:21 +0200 Subject: [PATCH 137/228] Fix error message --- htdocs/fichinter/class/api_interventions.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/fichinter/class/api_interventions.class.php b/htdocs/fichinter/class/api_interventions.class.php index 2702ad6c55e..4808d224916 100644 --- a/htdocs/fichinter/class/api_interventions.class.php +++ b/htdocs/fichinter/class/api_interventions.class.php @@ -177,7 +177,7 @@ class Interventions extends DolibarrApi throw new RestException(503, 'Error when retrieve fichinter list : '.$db->lasterror()); } if( ! count($obj_ret)) { - throw new RestException(404, 'No finchinter found'); + throw new RestException(404, 'No intervention found'); } return $obj_ret; } From bc230c2d2517e9a0480b37f2d4ff7024d15e33c6 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 14 Aug 2019 01:43:06 +0200 Subject: [PATCH 138/228] FIX Bad error management in zip compress and web site export --- htdocs/core/lib/files.lib.php | 24 +++++++++++++++++++--- htdocs/website/class/website.class.php | 15 +++++++++++--- htdocs/website/index.php | 28 +++++++++++++++++++++++++- 3 files changed, 60 insertions(+), 7 deletions(-) diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 92b739b3190..ac7e97afab2 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -1893,6 +1893,8 @@ function dol_compress_file($inputfile, $outputfile, $mode = "gz") try { + dol_syslog("dol_compress_file mode=".$mode." inputfile=".$inputfile." outputfile=".$outputfile); + $data = implode("", file(dol_osencode($inputfile))); if ($mode == 'gz') { $foundhandler=1; $compressdata = gzencode($data, 9); } elseif ($mode == 'bz') { $foundhandler=1; $compressdata = bzcompress($data, 9); } @@ -1904,9 +1906,25 @@ function dol_compress_file($inputfile, $outputfile, $mode = "gz") include_once ODTPHP_PATHTOPCLZIP.'/pclzip.lib.php'; $archive = new PclZip($outputfile); - $archive->add($inputfile, PCLZIP_OPT_REMOVE_PATH, dirname($inputfile)); - //$archive->add($inputfile); - return 1; + $result = $archive->add($inputfile, PCLZIP_OPT_REMOVE_PATH, dirname($inputfile)); + + if ($result === 0) + { + global $errormsg; + $errormsg=$archive->errorInfo(true); + dol_syslog("dol_compress_file failure - ".$errormsg, LOG_ERR); + if ($archive->errorCode() == PCLZIP_ERR_WRITE_OPEN_FAIL) + { + dol_syslog("dol_compress_file error PCLZIP_ERR_WRITE_OPEN_FAIL", LOG_ERR); + return -4; + } + return -3; + } + else + { + dol_syslog("dol_compress_file success - ".count($result)." files"); + return 1; + } } } diff --git a/htdocs/website/class/website.class.php b/htdocs/website/class/website.class.php index fffa25cf728..4218552c9aa 100644 --- a/htdocs/website/class/website.class.php +++ b/htdocs/website/class/website.class.php @@ -790,7 +790,7 @@ class Website extends CommonObject /** * Generate a zip with all data of web site. * - * @return string Path to file with zip + * @return string Path to file with zip or '' if error */ public function exportWebSite() { @@ -957,9 +957,18 @@ class Website extends CommonObject $filename = $conf->website->dir_temp.'/'.$website->ref.'/website_'.$website->ref.'-'.dol_print_date(dol_now(), 'dayhourlog').'.zip'; dol_delete_file($fileglob, 0); - dol_compress_file($filedir, $filename, 'zip'); + $result = dol_compress_file($filedir, $filename, 'zip'); - return $filename; + if ($result > 0) + { + return $filename; + } + else + { + global $errormsg; + $this->error = $errormsg; + return ''; + } } diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 8ac8de1a5ca..75df4f2552c 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -338,7 +338,7 @@ if ($action == 'addsite') { $db->begin(); - if (GETPOST('virtualhost', 'alpha') && ! preg_match('/^http/', GETPOST('virtualhost', 'alpha'))) + if (GETPOST('virtualhost', 'alpha') && ! preg_match('/^http/', GETPOST('virtualhost', 'alpha'))) { $error++; setEventMessages($langs->trans('ErrorURLMustStartWithHttp', $langs->transnoentitiesnoconv("VirtualHost")), null, 'errors'); @@ -414,6 +414,7 @@ if ($action == 'addcontainer') { include_once DOL_DOCUMENT_ROOT.'/core/lib/geturl.lib.php'; + //if (! preg_match('/^http/', $urltograb) && ! preg_match('/^file/', $urltograb)) if (! preg_match('/^http/', $urltograb)) { $error++; @@ -427,6 +428,7 @@ if ($action == 'addcontainer') // Clean url to grab, so url can be // http://www.example.com/ or http://www.example.com/dir1/ or http://www.example.com/dir1/aaa $urltograbwithoutdomainandparam = preg_replace('/^https?:\/\/[^\/]+\/?/i', '', $urltograb); + //$urltograbwithoutdomainandparam = preg_replace('/^file:\/\/[^\/]+\/?/i', '', $urltograb); $urltograbwithoutdomainandparam = preg_replace('/\?.*$/', '', $urltograbwithoutdomainandparam); if (empty($urltograbwithoutdomainandparam) && ! preg_match('/\/$/', $urltograb)) { @@ -1674,6 +1676,10 @@ if ($action == 'exportsite') readfile($fileofzip); exit; } + else + { + setEventMessages($object->error, $object->errors, 'errors'); + } } // Import site @@ -3142,6 +3148,7 @@ if ($action == 'preview' || $action == 'createfromclone' || $action == 'createpa // Ouput page under the Dolibarr top menu $objectpage->fetch($pageid); + $jscontent = @file_get_contents($filejs); $out = ''."\n"; @@ -3156,6 +3163,25 @@ if ($action == 'preview' || $action == 'createfromclone' || $action == 'createpa $out.="\n\n"; $out.="\n"; $out.=dolWebsiteReplacementOfLinks($object, $objectpage->htmlheader, 1, 'htmlheader'); + + $out.="\n"; + // TODO Keep only the or the '."\n"; print ''."\n"; + print ''."\n"; } // Browser notifications diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 12c23e721e2..6b73907ad70 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -2199,7 +2199,53 @@ if (! GETPOST('hide_websitemenu')) print ''."\n"; print '
'; print ''; print '
'; print $langs->trans("ShowSubcontainers"); From 87b2a01a3534c6a8ee521b9afa96688dcefe3a12 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 14 Aug 2019 19:49:07 +0200 Subject: [PATCH 152/228] NEW Add less 2 css converter --- htdocs/core/class/lessc.class.php | 3886 +++++++++++++++++++++++++++++ 1 file changed, 3886 insertions(+) create mode 100644 htdocs/core/class/lessc.class.php diff --git a/htdocs/core/class/lessc.class.php b/htdocs/core/class/lessc.class.php new file mode 100644 index 00000000000..34034226497 --- /dev/null +++ b/htdocs/core/class/lessc.class.php @@ -0,0 +1,3886 @@ + + * Licensed under MIT or GPLv3, see LICENSE + */ + + +/** + * The LESS compiler and parser. + * + * Converting LESS to CSS is a three stage process. The incoming file is parsed + * by `lessc_parser` into a syntax tree, then it is compiled into another tree + * representing the CSS structure by `lessc`. The CSS tree is fed into a + * formatter, like `lessc_formatter` which then outputs CSS as a string. + * + * During the first compile, all values are *reduced*, which means that their + * types are brought to the lowest form before being dump as strings. This + * handles math equations, variable dereferences, and the like. + * + * The `parse` function of `lessc` is the entry point. + * + * In summary: + * + * The `lessc` class creates an instance of the parser, feeds it LESS code, + * then transforms the resulting tree to a CSS tree. This class also holds the + * evaluation context, such as all available mixins and variables at any given + * time. + * + * The `lessc_parser` class is only concerned with parsing its input. + * + * The `lessc_formatter` takes a CSS tree, and dumps it to a formatted string, + * handling things like indentation. + */ +class lessc { + static public $VERSION = "v0.5.0"; + + static public $TRUE = array("keyword", "true"); + static public $FALSE = array("keyword", "false"); + + protected $libFunctions = array(); + protected $registeredVars = array(); + protected $preserveComments = false; + + public $vPrefix = '@'; // prefix of abstract properties + public $mPrefix = '$'; // prefix of abstract blocks + public $parentSelector = '&'; + + public $importDisabled = false; + public $importDir = ''; + + protected $numberPrecision = null; + + protected $allParsedFiles = array(); + + // set to the parser that generated the current line when compiling + // so we know how to create error messages + protected $sourceParser = null; + protected $sourceLoc = null; + + static protected $nextImportId = 0; // uniquely identify imports + + // attempts to find the path of an import url, returns null for css files + protected function findImport($url) { + foreach ((array)$this->importDir as $dir) { + $full = $dir.(substr($dir, -1) != '/' ? '/' : '').$url; + if ($this->fileExists($file = $full.'.less') || $this->fileExists($file = $full)) { + return $file; + } + } + + return null; + } + + protected function fileExists($name) { + return is_file($name); + } + + public static function compressList($items, $delim) { + if (!isset($items[1]) && isset($items[0])) return $items[0]; + else return array('list', $delim, $items); + } + + public static function preg_quote($what) { + return preg_quote($what, '/'); + } + + protected function tryImport($importPath, $parentBlock, $out) { + if ($importPath[0] == "function" && $importPath[1] == "url") { + $importPath = $this->flattenList($importPath[2]); + } + + $str = $this->coerceString($importPath); + if ($str === null) return false; + + $url = $this->compileValue($this->lib_e($str)); + + // don't import if it ends in css + if (substr_compare($url, '.css', -4, 4) === 0) return false; + + $realPath = $this->findImport($url); + + if ($realPath === null) return false; + + if ($this->importDisabled) { + return array(false, "/* import disabled */"); + } + + if (isset($this->allParsedFiles[realpath($realPath)])) { + return array(false, null); + } + + $this->addParsedFile($realPath); + $parser = $this->makeParser($realPath); + $root = $parser->parse(file_get_contents($realPath)); + + // set the parents of all the block props + foreach ($root->props as $prop) { + if ($prop[0] == "block") { + $prop[1]->parent = $parentBlock; + } + } + + // copy mixins into scope, set their parents + // bring blocks from import into current block + // TODO: need to mark the source parser these came from this file + foreach ($root->children as $childName => $child) { + if (isset($parentBlock->children[$childName])) { + $parentBlock->children[$childName] = array_merge( + $parentBlock->children[$childName], + $child); + } else { + $parentBlock->children[$childName] = $child; + } + } + + $pi = pathinfo($realPath); + $dir = $pi["dirname"]; + + list($top, $bottom) = $this->sortProps($root->props, true); + $this->compileImportedProps($top, $parentBlock, $out, $parser, $dir); + + return array(true, $bottom, $parser, $dir); + } + + protected function compileImportedProps($props, $block, $out, $sourceParser, $importDir) { + $oldSourceParser = $this->sourceParser; + + $oldImport = $this->importDir; + + // TODO: this is because the importDir api is stupid + $this->importDir = (array)$this->importDir; + array_unshift($this->importDir, $importDir); + + foreach ($props as $prop) { + $this->compileProp($prop, $block, $out); + } + + $this->importDir = $oldImport; + $this->sourceParser = $oldSourceParser; + } + + /** + * Recursively compiles a block. + * + * A block is analogous to a CSS block in most cases. A single LESS document + * is encapsulated in a block when parsed, but it does not have parent tags + * so all of it's children appear on the root level when compiled. + * + * Blocks are made up of props and children. + * + * Props are property instructions, array tuples which describe an action + * to be taken, eg. write a property, set a variable, mixin a block. + * + * The children of a block are just all the blocks that are defined within. + * This is used to look up mixins when performing a mixin. + * + * Compiling the block involves pushing a fresh environment on the stack, + * and iterating through the props, compiling each one. + * + * See lessc::compileProp() + * + */ + protected function compileBlock($block) { + switch ($block->type) { + case "root": + $this->compileRoot($block); + break; + case null: + $this->compileCSSBlock($block); + break; + case "media": + $this->compileMedia($block); + break; + case "directive": + $name = "@" . $block->name; + if (!empty($block->value)) { + $name .= " " . $this->compileValue($this->reduce($block->value)); + } + + $this->compileNestedBlock($block, array($name)); + break; + default: + $this->throwError("unknown block type: $block->type\n"); + } + } + + protected function compileCSSBlock($block) { + $env = $this->pushEnv(); + + $selectors = $this->compileSelectors($block->tags); + $env->selectors = $this->multiplySelectors($selectors); + $out = $this->makeOutputBlock(null, $env->selectors); + + $this->scope->children[] = $out; + $this->compileProps($block, $out); + + $block->scope = $env; // mixins carry scope with them! + $this->popEnv(); + } + + protected function compileMedia($media) { + $env = $this->pushEnv($media); + $parentScope = $this->mediaParent($this->scope); + + $query = $this->compileMediaQuery($this->multiplyMedia($env)); + + $this->scope = $this->makeOutputBlock($media->type, array($query)); + $parentScope->children[] = $this->scope; + + $this->compileProps($media, $this->scope); + + if (count($this->scope->lines) > 0) { + $orphanSelelectors = $this->findClosestSelectors(); + if (!is_null($orphanSelelectors)) { + $orphan = $this->makeOutputBlock(null, $orphanSelelectors); + $orphan->lines = $this->scope->lines; + array_unshift($this->scope->children, $orphan); + $this->scope->lines = array(); + } + } + + $this->scope = $this->scope->parent; + $this->popEnv(); + } + + protected function mediaParent($scope) { + while (!empty($scope->parent)) { + if (!empty($scope->type) && $scope->type != "media") { + break; + } + $scope = $scope->parent; + } + + return $scope; + } + + protected function compileNestedBlock($block, $selectors) { + $this->pushEnv($block); + $this->scope = $this->makeOutputBlock($block->type, $selectors); + $this->scope->parent->children[] = $this->scope; + + $this->compileProps($block, $this->scope); + + $this->scope = $this->scope->parent; + $this->popEnv(); + } + + protected function compileRoot($root) { + $this->pushEnv(); + $this->scope = $this->makeOutputBlock($root->type); + $this->compileProps($root, $this->scope); + $this->popEnv(); + } + + protected function compileProps($block, $out) { + foreach ($this->sortProps($block->props) as $prop) { + $this->compileProp($prop, $block, $out); + } + $out->lines = $this->deduplicate($out->lines); + } + + /** + * Deduplicate lines in a block. Comments are not deduplicated. If a + * duplicate rule is detected, the comments immediately preceding each + * occurence are consolidated. + */ + protected function deduplicate($lines) { + $unique = array(); + $comments = array(); + + foreach ($lines as $line) { + if (strpos($line, '/*') === 0) { + $comments[] = $line; + continue; + } + if (!in_array($line, $unique)) { + $unique[] = $line; + } + array_splice($unique, array_search($line, $unique), 0, $comments); + $comments = array(); + } + return array_merge($unique, $comments); + } + + protected function sortProps($props, $split = false) { + $vars = array(); + $imports = array(); + $other = array(); + $stack = array(); + + foreach ($props as $prop) { + switch ($prop[0]) { + case "comment": + $stack[] = $prop; + break; + case "assign": + $stack[] = $prop; + if (isset($prop[1][0]) && $prop[1][0] == $this->vPrefix) { + $vars = array_merge($vars, $stack); + } else { + $other = array_merge($other, $stack); + } + $stack = array(); + break; + case "import": + $id = self::$nextImportId++; + $prop[] = $id; + $stack[] = $prop; + $imports = array_merge($imports, $stack); + $other[] = array("import_mixin", $id); + $stack = array(); + break; + default: + $stack[] = $prop; + $other = array_merge($other, $stack); + $stack = array(); + break; + } + } + $other = array_merge($other, $stack); + + if ($split) { + return array(array_merge($imports, $vars), $other); + } else { + return array_merge($imports, $vars, $other); + } + } + + protected function compileMediaQuery($queries) { + $compiledQueries = array(); + foreach ($queries as $query) { + $parts = array(); + foreach ($query as $q) { + switch ($q[0]) { + case "mediaType": + $parts[] = implode(" ", array_slice($q, 1)); + break; + case "mediaExp": + if (isset($q[2])) { + $parts[] = "($q[1]: " . + $this->compileValue($this->reduce($q[2])) . ")"; + } else { + $parts[] = "($q[1])"; + } + break; + case "variable": + $parts[] = $this->compileValue($this->reduce($q)); + break; + } + } + + if (count($parts) > 0) { + $compiledQueries[] = implode(" and ", $parts); + } + } + + $out = "@media"; + if (!empty($parts)) { + $out .= " " . + implode($this->formatter->selectorSeparator, $compiledQueries); + } + return $out; + } + + protected function multiplyMedia($env, $childQueries = null) { + if (is_null($env) || + !empty($env->block->type) && $env->block->type != "media" + ) { + return $childQueries; + } + + // plain old block, skip + if (empty($env->block->type)) { + return $this->multiplyMedia($env->parent, $childQueries); + } + + $out = array(); + $queries = $env->block->queries; + if (is_null($childQueries)) { + $out = $queries; + } else { + foreach ($queries as $parent) { + foreach ($childQueries as $child) { + $out[] = array_merge($parent, $child); + } + } + } + + return $this->multiplyMedia($env->parent, $out); + } + + protected function expandParentSelectors(&$tag, $replace) { + $parts = explode("$&$", $tag); + $count = 0; + foreach ($parts as &$part) { + $part = str_replace($this->parentSelector, $replace, $part, $c); + $count += $c; + } + $tag = implode($this->parentSelector, $parts); + return $count; + } + + protected function findClosestSelectors() { + $env = $this->env; + $selectors = null; + while ($env !== null) { + if (isset($env->selectors)) { + $selectors = $env->selectors; + break; + } + $env = $env->parent; + } + + return $selectors; + } + + + // multiply $selectors against the nearest selectors in env + protected function multiplySelectors($selectors) { + // find parent selectors + + $parentSelectors = $this->findClosestSelectors(); + if (is_null($parentSelectors)) { + // kill parent reference in top level selector + foreach ($selectors as &$s) { + $this->expandParentSelectors($s, ""); + } + + return $selectors; + } + + $out = array(); + foreach ($parentSelectors as $parent) { + foreach ($selectors as $child) { + $count = $this->expandParentSelectors($child, $parent); + + // don't prepend the parent tag if & was used + if ($count > 0) { + $out[] = trim($child); + } else { + $out[] = trim($parent . ' ' . $child); + } + } + } + + return $out; + } + + // reduces selector expressions + protected function compileSelectors($selectors) { + $out = array(); + + foreach ($selectors as $s) { + if (is_array($s)) { + list(, $value) = $s; + $out[] = trim($this->compileValue($this->reduce($value))); + } else { + $out[] = $s; + } + } + + return $out; + } + + protected function eq($left, $right) { + return $left == $right; + } + + protected function patternMatch($block, $orderedArgs, $keywordArgs) { + // match the guards if it has them + // any one of the groups must have all its guards pass for a match + if (!empty($block->guards)) { + $groupPassed = false; + foreach ($block->guards as $guardGroup) { + foreach ($guardGroup as $guard) { + $this->pushEnv(); + $this->zipSetArgs($block->args, $orderedArgs, $keywordArgs); + + $negate = false; + if ($guard[0] == "negate") { + $guard = $guard[1]; + $negate = true; + } + + $passed = $this->reduce($guard) == self::$TRUE; + if ($negate) $passed = !$passed; + + $this->popEnv(); + + if ($passed) { + $groupPassed = true; + } else { + $groupPassed = false; + break; + } + } + + if ($groupPassed) break; + } + + if (!$groupPassed) { + return false; + } + } + + if (empty($block->args)) { + return $block->isVararg || empty($orderedArgs) && empty($keywordArgs); + } + + $remainingArgs = $block->args; + if ($keywordArgs) { + $remainingArgs = array(); + foreach ($block->args as $arg) { + if ($arg[0] == "arg" && isset($keywordArgs[$arg[1]])) { + continue; + } + + $remainingArgs[] = $arg; + } + } + + $i = -1; // no args + // try to match by arity or by argument literal + foreach ($remainingArgs as $i => $arg) { + switch ($arg[0]) { + case "lit": + if (empty($orderedArgs[$i]) || !$this->eq($arg[1], $orderedArgs[$i])) { + return false; + } + break; + case "arg": + // no arg and no default value + if (!isset($orderedArgs[$i]) && !isset($arg[2])) { + return false; + } + break; + case "rest": + $i--; // rest can be empty + break 2; + } + } + + if ($block->isVararg) { + return true; // not having enough is handled above + } else { + $numMatched = $i + 1; + // greater than because default values always match + return $numMatched >= count($orderedArgs); + } + } + + protected function patternMatchAll($blocks, $orderedArgs, $keywordArgs, $skip=array()) { + $matches = null; + foreach ($blocks as $block) { + // skip seen blocks that don't have arguments + if (isset($skip[$block->id]) && !isset($block->args)) { + continue; + } + + if ($this->patternMatch($block, $orderedArgs, $keywordArgs)) { + $matches[] = $block; + } + } + + return $matches; + } + + // attempt to find blocks matched by path and args + protected function findBlocks($searchIn, $path, $orderedArgs, $keywordArgs, $seen=array()) { + if ($searchIn == null) return null; + if (isset($seen[$searchIn->id])) return null; + $seen[$searchIn->id] = true; + + $name = $path[0]; + + if (isset($searchIn->children[$name])) { + $blocks = $searchIn->children[$name]; + if (count($path) == 1) { + $matches = $this->patternMatchAll($blocks, $orderedArgs, $keywordArgs, $seen); + if (!empty($matches)) { + // This will return all blocks that match in the closest + // scope that has any matching block, like lessjs + return $matches; + } + } else { + $matches = array(); + foreach ($blocks as $subBlock) { + $subMatches = $this->findBlocks($subBlock, + array_slice($path, 1), $orderedArgs, $keywordArgs, $seen); + + if (!is_null($subMatches)) { + foreach ($subMatches as $sm) { + $matches[] = $sm; + } + } + } + + return count($matches) > 0 ? $matches : null; + } + } + if ($searchIn->parent === $searchIn) return null; + return $this->findBlocks($searchIn->parent, $path, $orderedArgs, $keywordArgs, $seen); + } + + // sets all argument names in $args to either the default value + // or the one passed in through $values + protected function zipSetArgs($args, $orderedValues, $keywordValues) { + $assignedValues = array(); + + $i = 0; + foreach ($args as $a) { + if ($a[0] == "arg") { + if (isset($keywordValues[$a[1]])) { + // has keyword arg + $value = $keywordValues[$a[1]]; + } elseif (isset($orderedValues[$i])) { + // has ordered arg + $value = $orderedValues[$i]; + $i++; + } elseif (isset($a[2])) { + // has default value + $value = $a[2]; + } else { + $this->throwError("Failed to assign arg " . $a[1]); + $value = null; // :( + } + + $value = $this->reduce($value); + $this->set($a[1], $value); + $assignedValues[] = $value; + } else { + // a lit + $i++; + } + } + + // check for a rest + $last = end($args); + if ($last[0] == "rest") { + $rest = array_slice($orderedValues, count($args) - 1); + $this->set($last[1], $this->reduce(array("list", " ", $rest))); + } + + // wow is this the only true use of PHP's + operator for arrays? + $this->env->arguments = $assignedValues + $orderedValues; + } + + // compile a prop and update $lines or $blocks appropriately + protected function compileProp($prop, $block, $out) { + // set error position context + $this->sourceLoc = isset($prop[-1]) ? $prop[-1] : -1; + + switch ($prop[0]) { + case 'assign': + list(, $name, $value) = $prop; + if ($name[0] == $this->vPrefix) { + $this->set($name, $value); + } else { + $out->lines[] = $this->formatter->property($name, + $this->compileValue($this->reduce($value))); + } + break; + case 'block': + list(, $child) = $prop; + $this->compileBlock($child); + break; + case 'mixin': + list(, $path, $args, $suffix) = $prop; + + $orderedArgs = array(); + $keywordArgs = array(); + foreach ((array)$args as $arg) { + $argval = null; + switch ($arg[0]) { + case "arg": + if (!isset($arg[2])) { + $orderedArgs[] = $this->reduce(array("variable", $arg[1])); + } else { + $keywordArgs[$arg[1]] = $this->reduce($arg[2]); + } + break; + + case "lit": + $orderedArgs[] = $this->reduce($arg[1]); + break; + default: + $this->throwError("Unknown arg type: " . $arg[0]); + } + } + + $mixins = $this->findBlocks($block, $path, $orderedArgs, $keywordArgs); + + if ($mixins === null) { + $this->throwError("{$prop[1][0]} is undefined"); + } + + foreach ($mixins as $mixin) { + if ($mixin === $block && !$orderedArgs) { + continue; + } + + $haveScope = false; + if (isset($mixin->parent->scope)) { + $haveScope = true; + $mixinParentEnv = $this->pushEnv(); + $mixinParentEnv->storeParent = $mixin->parent->scope; + } + + $haveArgs = false; + if (isset($mixin->args)) { + $haveArgs = true; + $this->pushEnv(); + $this->zipSetArgs($mixin->args, $orderedArgs, $keywordArgs); + } + + $oldParent = $mixin->parent; + if ($mixin != $block) $mixin->parent = $block; + + foreach ($this->sortProps($mixin->props) as $subProp) { + if ($suffix !== null && + $subProp[0] == "assign" && + is_string($subProp[1]) && + $subProp[1]{0} != $this->vPrefix + ) { + $subProp[2] = array( + 'list', ' ', + array($subProp[2], array('keyword', $suffix)) + ); + } + + $this->compileProp($subProp, $mixin, $out); + } + + $mixin->parent = $oldParent; + + if ($haveArgs) $this->popEnv(); + if ($haveScope) $this->popEnv(); + } + + break; + case 'raw': + $out->lines[] = $prop[1]; + break; + case "directive": + list(, $name, $value) = $prop; + $out->lines[] = "@$name " . $this->compileValue($this->reduce($value)).';'; + break; + case "comment": + $out->lines[] = $prop[1]; + break; + case "import": + list(, $importPath, $importId) = $prop; + $importPath = $this->reduce($importPath); + + if (!isset($this->env->imports)) { + $this->env->imports = array(); + } + + $result = $this->tryImport($importPath, $block, $out); + + $this->env->imports[$importId] = $result === false ? + array(false, "@import " . $this->compileValue($importPath).";") : + $result; + + break; + case "import_mixin": + list(,$importId) = $prop; + $import = $this->env->imports[$importId]; + if ($import[0] === false) { + if (isset($import[1])) { + $out->lines[] = $import[1]; + } + } else { + list(, $bottom, $parser, $importDir) = $import; + $this->compileImportedProps($bottom, $block, $out, $parser, $importDir); + } + + break; + default: + $this->throwError("unknown op: {$prop[0]}\n"); + } + } + + + /** + * Compiles a primitive value into a CSS property value. + * + * Values in lessphp are typed by being wrapped in arrays, their format is + * typically: + * + * array(type, contents [, additional_contents]*) + * + * The input is expected to be reduced. This function will not work on + * things like expressions and variables. + */ + public function compileValue($value) { + switch ($value[0]) { + case 'list': + // [1] - delimiter + // [2] - array of values + return implode($value[1], array_map(array($this, 'compileValue'), $value[2])); + case 'raw_color': + if (!empty($this->formatter->compressColors)) { + return $this->compileValue($this->coerceColor($value)); + } + return $value[1]; + case 'keyword': + // [1] - the keyword + return $value[1]; + case 'number': + list(, $num, $unit) = $value; + // [1] - the number + // [2] - the unit + if ($this->numberPrecision !== null) { + $num = round($num, $this->numberPrecision); + } + return $num . $unit; + case 'string': + // [1] - contents of string (includes quotes) + list(, $delim, $content) = $value; + foreach ($content as &$part) { + if (is_array($part)) { + $part = $this->compileValue($part); + } + } + return $delim . implode($content) . $delim; + case 'color': + // [1] - red component (either number or a %) + // [2] - green component + // [3] - blue component + // [4] - optional alpha component + list(, $r, $g, $b) = $value; + $r = round($r); + $g = round($g); + $b = round($b); + + if (count($value) == 5 && $value[4] != 1) { // rgba + return 'rgba('.$r.','.$g.','.$b.','.$value[4].')'; + } + + $h = sprintf("#%02x%02x%02x", $r, $g, $b); + + if (!empty($this->formatter->compressColors)) { + // Converting hex color to short notation (e.g. #003399 to #039) + if ($h[1] === $h[2] && $h[3] === $h[4] && $h[5] === $h[6]) { + $h = '#' . $h[1] . $h[3] . $h[5]; + } + } + + return $h; + + case 'function': + list(, $name, $args) = $value; + return $name.'('.$this->compileValue($args).')'; + default: // assumed to be unit + $this->throwError("unknown value type: $value[0]"); + } + } + + protected function lib_pow($args) { + list($base, $exp) = $this->assertArgs($args, 2, "pow"); + return pow($this->assertNumber($base), $this->assertNumber($exp)); + } + + protected function lib_pi() { + return pi(); + } + + protected function lib_mod($args) { + list($a, $b) = $this->assertArgs($args, 2, "mod"); + return $this->assertNumber($a) % $this->assertNumber($b); + } + + protected function lib_tan($num) { + return tan($this->assertNumber($num)); + } + + protected function lib_sin($num) { + return sin($this->assertNumber($num)); + } + + protected function lib_cos($num) { + return cos($this->assertNumber($num)); + } + + protected function lib_atan($num) { + $num = atan($this->assertNumber($num)); + return array("number", $num, "rad"); + } + + protected function lib_asin($num) { + $num = asin($this->assertNumber($num)); + return array("number", $num, "rad"); + } + + protected function lib_acos($num) { + $num = acos($this->assertNumber($num)); + return array("number", $num, "rad"); + } + + protected function lib_sqrt($num) { + return sqrt($this->assertNumber($num)); + } + + protected function lib_extract($value) { + list($list, $idx) = $this->assertArgs($value, 2, "extract"); + $idx = $this->assertNumber($idx); + // 1 indexed + if ($list[0] == "list" && isset($list[2][$idx - 1])) { + return $list[2][$idx - 1]; + } + } + + protected function lib_isnumber($value) { + return $this->toBool($value[0] == "number"); + } + + protected function lib_isstring($value) { + return $this->toBool($value[0] == "string"); + } + + protected function lib_iscolor($value) { + return $this->toBool($this->coerceColor($value)); + } + + protected function lib_iskeyword($value) { + return $this->toBool($value[0] == "keyword"); + } + + protected function lib_ispixel($value) { + return $this->toBool($value[0] == "number" && $value[2] == "px"); + } + + protected function lib_ispercentage($value) { + return $this->toBool($value[0] == "number" && $value[2] == "%"); + } + + protected function lib_isem($value) { + return $this->toBool($value[0] == "number" && $value[2] == "em"); + } + + protected function lib_isrem($value) { + return $this->toBool($value[0] == "number" && $value[2] == "rem"); + } + + protected function lib_rgbahex($color) { + $color = $this->coerceColor($color); + if (is_null($color)) { + $this->throwError("color expected for rgbahex"); + } + + return sprintf("#%02x%02x%02x%02x", + isset($color[4]) ? $color[4] * 255 : 255, + $color[1], + $color[2], + $color[3] + ); + } + + protected function lib_argb($color){ + return $this->lib_rgbahex($color); + } + + /** + * Given an url, decide whether to output a regular link or the base64-encoded contents of the file + * + * @param array $value either an argument list (two strings) or a single string + * @return string formatted url(), either as a link or base64-encoded + */ + protected function lib_data_uri($value) { + $mime = ($value[0] === 'list') ? $value[2][0][2] : null; + $url = ($value[0] === 'list') ? $value[2][1][2][0] : $value[2][0]; + + $fullpath = $this->findImport($url); + + if ($fullpath && ($fsize = filesize($fullpath)) !== false) { + // IE8 can't handle data uris larger than 32KB + if ($fsize/1024 < 32) { + if (is_null($mime)) { + if (class_exists('finfo')) { // php 5.3+ + $finfo = new finfo(FILEINFO_MIME); + $mime = explode('; ', $finfo->file($fullpath)); + $mime = $mime[0]; + } elseif (function_exists('mime_content_type')) { // PHP 5.2 + $mime = mime_content_type($fullpath); + } + } + + if (!is_null($mime)) // fallback if the mime type is still unknown + $url = sprintf('data:%s;base64,%s', $mime, base64_encode(file_get_contents($fullpath))); + } + } + + return 'url("'.$url.'")'; + } + + // utility func to unquote a string + protected function lib_e($arg) { + switch ($arg[0]) { + case "list": + $items = $arg[2]; + if (isset($items[0])) { + return $this->lib_e($items[0]); + } + $this->throwError("unrecognised input"); + case "string": + $arg[1] = ""; + return $arg; + case "keyword": + return $arg; + default: + return array("keyword", $this->compileValue($arg)); + } + } + + protected function lib__sprintf($args) { + if ($args[0] != "list") return $args; + $values = $args[2]; + $string = array_shift($values); + $template = $this->compileValue($this->lib_e($string)); + + $i = 0; + if (preg_match_all('/%[dsa]/', $template, $m)) { + foreach ($m[0] as $match) { + $val = isset($values[$i]) ? + $this->reduce($values[$i]) : array('keyword', ''); + + // lessjs compat, renders fully expanded color, not raw color + if ($color = $this->coerceColor($val)) { + $val = $color; + } + + $i++; + $rep = $this->compileValue($this->lib_e($val)); + $template = preg_replace('/'.self::preg_quote($match).'/', + $rep, $template, 1); + } + } + + $d = $string[0] == "string" ? $string[1] : '"'; + return array("string", $d, array($template)); + } + + protected function lib_floor($arg) { + $value = $this->assertNumber($arg); + return array("number", floor($value), $arg[2]); + } + + protected function lib_ceil($arg) { + $value = $this->assertNumber($arg); + return array("number", ceil($value), $arg[2]); + } + + protected function lib_round($arg) { + if ($arg[0] != "list") { + $value = $this->assertNumber($arg); + return array("number", round($value), $arg[2]); + } else { + $value = $this->assertNumber($arg[2][0]); + $precision = $this->assertNumber($arg[2][1]); + return array("number", round($value, $precision), $arg[2][0][2]); + } + } + + protected function lib_unit($arg) { + if ($arg[0] == "list") { + list($number, $newUnit) = $arg[2]; + return array("number", $this->assertNumber($number), + $this->compileValue($this->lib_e($newUnit))); + } else { + return array("number", $this->assertNumber($arg), ""); + } + } + + /** + * Helper function to get arguments for color manipulation functions. + * takes a list that contains a color like thing and a percentage + */ + public function colorArgs($args) { + if ($args[0] != 'list' || count($args[2]) < 2) { + return array(array('color', 0, 0, 0), 0); + } + list($color, $delta) = $args[2]; + $color = $this->assertColor($color); + $delta = floatval($delta[1]); + + return array($color, $delta); + } + + protected function lib_darken($args) { + list($color, $delta) = $this->colorArgs($args); + + $hsl = $this->toHSL($color); + $hsl[3] = $this->clamp($hsl[3] - $delta, 100); + return $this->toRGB($hsl); + } + + protected function lib_lighten($args) { + list($color, $delta) = $this->colorArgs($args); + + $hsl = $this->toHSL($color); + $hsl[3] = $this->clamp($hsl[3] + $delta, 100); + return $this->toRGB($hsl); + } + + protected function lib_saturate($args) { + list($color, $delta) = $this->colorArgs($args); + + $hsl = $this->toHSL($color); + $hsl[2] = $this->clamp($hsl[2] + $delta, 100); + return $this->toRGB($hsl); + } + + protected function lib_desaturate($args) { + list($color, $delta) = $this->colorArgs($args); + + $hsl = $this->toHSL($color); + $hsl[2] = $this->clamp($hsl[2] - $delta, 100); + return $this->toRGB($hsl); + } + + protected function lib_spin($args) { + list($color, $delta) = $this->colorArgs($args); + + $hsl = $this->toHSL($color); + + $hsl[1] = $hsl[1] + $delta % 360; + if ($hsl[1] < 0) { + $hsl[1] += 360; + } + + return $this->toRGB($hsl); + } + + protected function lib_fadeout($args) { + list($color, $delta) = $this->colorArgs($args); + $color[4] = $this->clamp((isset($color[4]) ? $color[4] : 1) - $delta/100); + return $color; + } + + protected function lib_fadein($args) { + list($color, $delta) = $this->colorArgs($args); + $color[4] = $this->clamp((isset($color[4]) ? $color[4] : 1) + $delta/100); + return $color; + } + + protected function lib_hue($color) { + $hsl = $this->toHSL($this->assertColor($color)); + return round($hsl[1]); + } + + protected function lib_saturation($color) { + $hsl = $this->toHSL($this->assertColor($color)); + return round($hsl[2]); + } + + protected function lib_lightness($color) { + $hsl = $this->toHSL($this->assertColor($color)); + return round($hsl[3]); + } + + // get the alpha of a color + // defaults to 1 for non-colors or colors without an alpha + protected function lib_alpha($value) { + if (!is_null($color = $this->coerceColor($value))) { + return isset($color[4]) ? $color[4] : 1; + } + } + + // set the alpha of the color + protected function lib_fade($args) { + list($color, $alpha) = $this->colorArgs($args); + $color[4] = $this->clamp($alpha / 100.0); + return $color; + } + + protected function lib_percentage($arg) { + $num = $this->assertNumber($arg); + return array("number", $num*100, "%"); + } + + /** + * Mix color with white in variable proportion. + * + * It is the same as calling `mix(#ffffff, @color, @weight)`. + * + * tint(@color, [@weight: 50%]); + * + * http://lesscss.org/functions/#color-operations-tint + * + * @return array Color + */ + protected function lib_tint($args) { + $white = ['color', 255, 255, 255]; + if ($args[0] == 'color') { + return $this->lib_mix([ 'list', ',', [$white, $args] ]); + } elseif ($args[0] == "list" && count($args[2]) == 2) { + return $this->lib_mix([ $args[0], $args[1], [$white, $args[2][0], $args[2][1]] ]); + } else { + $this->throwError("tint expects (color, weight)"); + } + } + + /** + * Mix color with black in variable proportion. + * + * It is the same as calling `mix(#000000, @color, @weight)` + * + * shade(@color, [@weight: 50%]); + * + * http://lesscss.org/functions/#color-operations-shade + * + * @return array Color + */ + protected function lib_shade($args) { + $black = ['color', 0, 0, 0]; + if ($args[0] == 'color') { + return $this->lib_mix([ 'list', ',', [$black, $args] ]); + } elseif ($args[0] == "list" && count($args[2]) == 2) { + return $this->lib_mix([ $args[0], $args[1], [$black, $args[2][0], $args[2][1]] ]); + } else { + $this->throwError("shade expects (color, weight)"); + } + } + + // mixes two colors by weight + // mix(@color1, @color2, [@weight: 50%]); + // http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html#mix-instance_method + protected function lib_mix($args) { + if ($args[0] != "list" || count($args[2]) < 2) + $this->throwError("mix expects (color1, color2, weight)"); + + list($first, $second) = $args[2]; + $first = $this->assertColor($first); + $second = $this->assertColor($second); + + $first_a = $this->lib_alpha($first); + $second_a = $this->lib_alpha($second); + + if (isset($args[2][2])) { + $weight = $args[2][2][1] / 100.0; + } else { + $weight = 0.5; + } + + $w = $weight * 2 - 1; + $a = $first_a - $second_a; + + $w1 = (($w * $a == -1 ? $w : ($w + $a)/(1 + $w * $a)) + 1) / 2.0; + $w2 = 1.0 - $w1; + + $new = array('color', + $w1 * $first[1] + $w2 * $second[1], + $w1 * $first[2] + $w2 * $second[2], + $w1 * $first[3] + $w2 * $second[3], + ); + + if ($first_a != 1.0 || $second_a != 1.0) { + $new[] = $first_a * $weight + $second_a * ($weight - 1); + } + + return $this->fixColor($new); + } + + protected function lib_contrast($args) { + $darkColor = array('color', 0, 0, 0); + $lightColor = array('color', 255, 255, 255); + $threshold = 0.43; + + if ( $args[0] == 'list' ) { + $inputColor = ( isset($args[2][0]) ) ? $this->assertColor($args[2][0]) : $lightColor; + $darkColor = ( isset($args[2][1]) ) ? $this->assertColor($args[2][1]) : $darkColor; + $lightColor = ( isset($args[2][2]) ) ? $this->assertColor($args[2][2]) : $lightColor; + $threshold = ( isset($args[2][3]) ) ? $this->assertNumber($args[2][3]) : $threshold; + } + else { + $inputColor = $this->assertColor($args); + } + + $inputColor = $this->coerceColor($inputColor); + $darkColor = $this->coerceColor($darkColor); + $lightColor = $this->coerceColor($lightColor); + + //Figure out which is actually light and dark! + if ( $this->toLuma($darkColor) > $this->toLuma($lightColor) ) { + $t = $lightColor; + $lightColor = $darkColor; + $darkColor = $t; + } + + $inputColor_alpha = $this->lib_alpha($inputColor); + if ( ( $this->toLuma($inputColor) * $inputColor_alpha) < $threshold) { + return $lightColor; + } + return $darkColor; + } + + private function toLuma($color) { + list(, $r, $g, $b) = $this->coerceColor($color); + + $r = $r / 255; + $g = $g / 255; + $b = $b / 255; + + $r = ($r <= 0.03928) ? $r / 12.92 : pow((($r + 0.055) / 1.055), 2.4); + $g = ($g <= 0.03928) ? $g / 12.92 : pow((($g + 0.055) / 1.055), 2.4); + $b = ($b <= 0.03928) ? $b / 12.92 : pow((($b + 0.055) / 1.055), 2.4); + + return (0.2126 * $r) + (0.7152 * $g) + (0.0722 * $b); + } + + protected function lib_luma($color) { + return array("number", round($this->toLuma($color) * 100, 8), "%"); + } + + + public function assertColor($value, $error = "expected color value") { + $color = $this->coerceColor($value); + if (is_null($color)) $this->throwError($error); + return $color; + } + + public function assertNumber($value, $error = "expecting number") { + if ($value[0] == "number") return $value[1]; + $this->throwError($error); + } + + public function assertArgs($value, $expectedArgs, $name="") { + if ($expectedArgs == 1) { + return $value; + } else { + if ($value[0] !== "list" || $value[1] != ",") $this->throwError("expecting list"); + $values = $value[2]; + $numValues = count($values); + if ($expectedArgs != $numValues) { + if ($name) { + $name = $name . ": "; + } + + $this->throwError("${name}expecting $expectedArgs arguments, got $numValues"); + } + + return $values; + } + } + + protected function toHSL($color) { + if ($color[0] === 'hsl') { + return $color; + } + + $r = $color[1] / 255; + $g = $color[2] / 255; + $b = $color[3] / 255; + + $min = min($r, $g, $b); + $max = max($r, $g, $b); + + $L = ($min + $max) / 2; + if ($min == $max) { + $S = $H = 0; + } else { + if ($L < 0.5) { + $S = ($max - $min) / ($max + $min); + } else { + $S = ($max - $min) / (2.0 - $max - $min); + } + if ($r == $max) { + $H = ($g - $b) / ($max - $min); + } elseif ($g == $max) { + $H = 2.0 + ($b - $r) / ($max - $min); + } elseif ($b == $max) { + $H = 4.0 + ($r - $g) / ($max - $min); + } + + } + + $out = array('hsl', + ($H < 0 ? $H + 6 : $H)*60, + $S * 100, + $L * 100, + ); + + if (count($color) > 4) { + // copy alpha + $out[] = $color[4]; + } + return $out; + } + + protected function toRGB_helper($comp, $temp1, $temp2) { + if ($comp < 0) { + $comp += 1.0; + } elseif ($comp > 1) { + $comp -= 1.0; + } + + if (6 * $comp < 1) { + return $temp1 + ($temp2 - $temp1) * 6 * $comp; + } + if (2 * $comp < 1) { + return $temp2; + } + if (3 * $comp < 2) { + return $temp1 + ($temp2 - $temp1)*((2/3) - $comp) * 6; + } + + return $temp1; + } + + /** + * Converts a hsl array into a color value in rgb. + * Expects H to be in range of 0 to 360, S and L in 0 to 100 + */ + protected function toRGB($color) { + if ($color[0] === 'color') { + return $color; + } + + $H = $color[1] / 360; + $S = $color[2] / 100; + $L = $color[3] / 100; + + if ($S == 0) { + $r = $g = $b = $L; + } else { + $temp2 = $L < 0.5 ? + $L * (1.0 + $S) : + $L + $S - $L * $S; + + $temp1 = 2.0 * $L - $temp2; + + $r = $this->toRGB_helper($H + 1/3, $temp1, $temp2); + $g = $this->toRGB_helper($H, $temp1, $temp2); + $b = $this->toRGB_helper($H - 1/3, $temp1, $temp2); + } + + // $out = array('color', round($r*255), round($g*255), round($b*255)); + $out = array('color', $r*255, $g*255, $b*255); + if (count($color) > 4) { + // copy alpha + $out[] = $color[4]; + } + return $out; + } + + protected function clamp($v, $max = 1, $min = 0) { + return min($max, max($min, $v)); + } + + /** + * Convert the rgb, rgba, hsl color literals of function type + * as returned by the parser into values of color type. + */ + protected function funcToColor($func) { + $fname = $func[1]; + if ($func[2][0] != 'list') { + // need a list of arguments + return false; + } + $rawComponents = $func[2][2]; + + if ($fname == 'hsl' || $fname == 'hsla') { + $hsl = array('hsl'); + $i = 0; + foreach ($rawComponents as $c) { + $val = $this->reduce($c); + $val = isset($val[1]) ? floatval($val[1]) : 0; + + if ($i == 0) { + $clamp = 360; + } elseif ($i < 3) { + $clamp = 100; + } else { + $clamp = 1; + } + + $hsl[] = $this->clamp($val, $clamp); + $i++; + } + + while (count($hsl) < 4) { + $hsl[] = 0; + } + return $this->toRGB($hsl); + + } elseif ($fname == 'rgb' || $fname == 'rgba') { + $components = array(); + $i = 1; + foreach ($rawComponents as $c) { + $c = $this->reduce($c); + if ($i < 4) { + if ($c[0] == "number" && $c[2] == "%") { + $components[] = 255 * ($c[1] / 100); + } else { + $components[] = floatval($c[1]); + } + } elseif ($i == 4) { + if ($c[0] == "number" && $c[2] == "%") { + $components[] = 1.0 * ($c[1] / 100); + } else { + $components[] = floatval($c[1]); + } + } else break; + + $i++; + } + while (count($components) < 3) { + $components[] = 0; + } + array_unshift($components, 'color'); + return $this->fixColor($components); + } + + return false; + } + + protected function reduce($value, $forExpression = false) { + switch ($value[0]) { + case "interpolate": + $reduced = $this->reduce($value[1]); + $var = $this->compileValue($reduced); + $res = $this->reduce(array("variable", $this->vPrefix . $var)); + + if ($res[0] == "raw_color") { + $res = $this->coerceColor($res); + } + + if (empty($value[2])) $res = $this->lib_e($res); + + return $res; + case "variable": + $key = $value[1]; + if (is_array($key)) { + $key = $this->reduce($key); + $key = $this->vPrefix . $this->compileValue($this->lib_e($key)); + } + + $seen =& $this->env->seenNames; + + if (!empty($seen[$key])) { + $this->throwError("infinite loop detected: $key"); + } + + $seen[$key] = true; + $out = $this->reduce($this->get($key)); + $seen[$key] = false; + return $out; + case "list": + foreach ($value[2] as &$item) { + $item = $this->reduce($item, $forExpression); + } + return $value; + case "expression": + return $this->evaluate($value); + case "string": + foreach ($value[2] as &$part) { + if (is_array($part)) { + $strip = $part[0] == "variable"; + $part = $this->reduce($part); + if ($strip) $part = $this->lib_e($part); + } + } + return $value; + case "escape": + list(,$inner) = $value; + return $this->lib_e($this->reduce($inner)); + case "function": + $color = $this->funcToColor($value); + if ($color) return $color; + + list(, $name, $args) = $value; + if ($name == "%") $name = "_sprintf"; + + $f = isset($this->libFunctions[$name]) ? + $this->libFunctions[$name] : array($this, 'lib_'.str_replace('-', '_', $name)); + + if (is_callable($f)) { + if ($args[0] == 'list') + $args = self::compressList($args[2], $args[1]); + + $ret = call_user_func($f, $this->reduce($args, true), $this); + + if (is_null($ret)) { + return array("string", "", array( + $name, "(", $args, ")" + )); + } + + // convert to a typed value if the result is a php primitive + if (is_numeric($ret)) { + $ret = array('number', $ret, ""); + } elseif (!is_array($ret)) { + $ret = array('keyword', $ret); + } + + return $ret; + } + + // plain function, reduce args + $value[2] = $this->reduce($value[2]); + return $value; + case "unary": + list(, $op, $exp) = $value; + $exp = $this->reduce($exp); + + if ($exp[0] == "number") { + switch ($op) { + case "+": + return $exp; + case "-": + $exp[1] *= -1; + return $exp; + } + } + return array("string", "", array($op, $exp)); + } + + if ($forExpression) { + switch ($value[0]) { + case "keyword": + if ($color = $this->coerceColor($value)) { + return $color; + } + break; + case "raw_color": + return $this->coerceColor($value); + } + } + + return $value; + } + + + // coerce a value for use in color operation + protected function coerceColor($value) { + switch ($value[0]) { + case 'color': return $value; + case 'raw_color': + $c = array("color", 0, 0, 0); + $colorStr = substr($value[1], 1); + $num = hexdec($colorStr); + $width = strlen($colorStr) == 3 ? 16 : 256; + + for ($i = 3; $i > 0; $i--) { // 3 2 1 + $t = $num % $width; + $num /= $width; + + $c[$i] = $t * (256/$width) + $t * floor(16/$width); + } + + return $c; + case 'keyword': + $name = $value[1]; + if (isset(self::$cssColors[$name])) { + $rgba = explode(',', self::$cssColors[$name]); + + if (isset($rgba[3])) { + return array('color', $rgba[0], $rgba[1], $rgba[2], $rgba[3]); + } + return array('color', $rgba[0], $rgba[1], $rgba[2]); + } + return null; + } + } + + // make something string like into a string + protected function coerceString($value) { + switch ($value[0]) { + case "string": + return $value; + case "keyword": + return array("string", "", array($value[1])); + } + return null; + } + + // turn list of length 1 into value type + protected function flattenList($value) { + if ($value[0] == "list" && count($value[2]) == 1) { + return $this->flattenList($value[2][0]); + } + return $value; + } + + public function toBool($a) { + return $a ? self::$TRUE : self::$FALSE; + } + + // evaluate an expression + protected function evaluate($exp) { + list(, $op, $left, $right, $whiteBefore, $whiteAfter) = $exp; + + $left = $this->reduce($left, true); + $right = $this->reduce($right, true); + + if ($leftColor = $this->coerceColor($left)) { + $left = $leftColor; + } + + if ($rightColor = $this->coerceColor($right)) { + $right = $rightColor; + } + + $ltype = $left[0]; + $rtype = $right[0]; + + // operators that work on all types + if ($op == "and") { + return $this->toBool($left == self::$TRUE && $right == self::$TRUE); + } + + if ($op == "=") { + return $this->toBool($this->eq($left, $right) ); + } + + if ($op == "+" && !is_null($str = $this->stringConcatenate($left, $right))) { + return $str; + } + + // type based operators + $fname = "op_${ltype}_${rtype}"; + if (is_callable(array($this, $fname))) { + $out = $this->$fname($op, $left, $right); + if (!is_null($out)) return $out; + } + + // make the expression look it did before being parsed + $paddedOp = $op; + if ($whiteBefore) { + $paddedOp = " " . $paddedOp; + } + if ($whiteAfter) { + $paddedOp .= " "; + } + + return array("string", "", array($left, $paddedOp, $right)); + } + + protected function stringConcatenate($left, $right) { + if ($strLeft = $this->coerceString($left)) { + if ($right[0] == "string") { + $right[1] = ""; + } + $strLeft[2][] = $right; + return $strLeft; + } + + if ($strRight = $this->coerceString($right)) { + array_unshift($strRight[2], $left); + return $strRight; + } + } + + + // make sure a color's components don't go out of bounds + protected function fixColor($c) { + foreach (range(1, 3) as $i) { + if ($c[$i] < 0) $c[$i] = 0; + if ($c[$i] > 255) $c[$i] = 255; + } + + return $c; + } + + protected function op_number_color($op, $lft, $rgt) { + if ($op == '+' || $op == '*') { + return $this->op_color_number($op, $rgt, $lft); + } + } + + protected function op_color_number($op, $lft, $rgt) { + if ($rgt[0] == '%') $rgt[1] /= 100; + + return $this->op_color_color($op, $lft, + array_fill(1, count($lft) - 1, $rgt[1])); + } + + protected function op_color_color($op, $left, $right) { + $out = array('color'); + $max = count($left) > count($right) ? count($left) : count($right); + foreach (range(1, $max - 1) as $i) { + $lval = isset($left[$i]) ? $left[$i] : 0; + $rval = isset($right[$i]) ? $right[$i] : 0; + switch ($op) { + case '+': + $out[] = $lval + $rval; + break; + case '-': + $out[] = $lval - $rval; + break; + case '*': + $out[] = $lval * $rval; + break; + case '%': + $out[] = $lval % $rval; + break; + case '/': + if ($rval == 0) { + $this->throwError("evaluate error: can't divide by zero"); + } + $out[] = $lval / $rval; + break; + default: + $this->throwError('evaluate error: color op number failed on op '.$op); + } + } + return $this->fixColor($out); + } + + public function lib_red($color){ + $color = $this->coerceColor($color); + if (is_null($color)) { + $this->throwError('color expected for red()'); + } + + return $color[1]; + } + + public function lib_green($color){ + $color = $this->coerceColor($color); + if (is_null($color)) { + $this->throwError('color expected for green()'); + } + + return $color[2]; + } + + public function lib_blue($color){ + $color = $this->coerceColor($color); + if (is_null($color)) { + $this->throwError('color expected for blue()'); + } + + return $color[3]; + } + + + // operator on two numbers + protected function op_number_number($op, $left, $right) { + $unit = empty($left[2]) ? $right[2] : $left[2]; + + $value = 0; + switch ($op) { + case '+': + $value = $left[1] + $right[1]; + break; + case '*': + $value = $left[1] * $right[1]; + break; + case '-': + $value = $left[1] - $right[1]; + break; + case '%': + $value = $left[1] % $right[1]; + break; + case '/': + if ($right[1] == 0) $this->throwError('parse error: divide by zero'); + $value = $left[1] / $right[1]; + break; + case '<': + return $this->toBool($left[1] < $right[1]); + case '>': + return $this->toBool($left[1] > $right[1]); + case '>=': + return $this->toBool($left[1] >= $right[1]); + case '=<': + return $this->toBool($left[1] <= $right[1]); + default: + $this->throwError('parse error: unknown number operator: '.$op); + } + + return array("number", $value, $unit); + } + + + /* environment functions */ + + protected function makeOutputBlock($type, $selectors = null) { + $b = new stdclass; + $b->lines = array(); + $b->children = array(); + $b->selectors = $selectors; + $b->type = $type; + $b->parent = $this->scope; + return $b; + } + + // the state of execution + protected function pushEnv($block = null) { + $e = new stdclass; + $e->parent = $this->env; + $e->store = array(); + $e->block = $block; + + $this->env = $e; + return $e; + } + + // pop something off the stack + protected function popEnv() { + $old = $this->env; + $this->env = $this->env->parent; + return $old; + } + + // set something in the current env + protected function set($name, $value) { + $this->env->store[$name] = $value; + } + + + // get the highest occurrence entry for a name + protected function get($name) { + $current = $this->env; + + $isArguments = $name == $this->vPrefix . 'arguments'; + while ($current) { + if ($isArguments && isset($current->arguments)) { + return array('list', ' ', $current->arguments); + } + + if (isset($current->store[$name])) { + return $current->store[$name]; + } + + $current = isset($current->storeParent) ? + $current->storeParent : + $current->parent; + } + + $this->throwError("variable $name is undefined"); + } + + // inject array of unparsed strings into environment as variables + protected function injectVariables($args) { + $this->pushEnv(); + $parser = new lessc_parser($this, __METHOD__); + foreach ($args as $name => $strValue) { + if ($name{0} !== '@') { + $name = '@' . $name; + } + $parser->count = 0; + $parser->buffer = (string)$strValue; + if (!$parser->propertyValue($value)) { + throw new Exception("failed to parse passed in variable $name: $strValue"); + } + + $this->set($name, $value); + } + } + + /** + * Initialize any static state, can initialize parser for a file + * $opts isn't used yet + */ + public function __construct($fname = null) { + if ($fname !== null) { + // used for deprecated parse method + $this->_parseFile = $fname; + } + } + + public function compile($string, $name = null) { + $locale = setlocale(LC_NUMERIC, 0); + setlocale(LC_NUMERIC, "C"); + + $this->parser = $this->makeParser($name); + $root = $this->parser->parse($string); + + $this->env = null; + $this->scope = null; + + $this->formatter = $this->newFormatter(); + + if (!empty($this->registeredVars)) { + $this->injectVariables($this->registeredVars); + } + + $this->sourceParser = $this->parser; // used for error messages + $this->compileBlock($root); + + ob_start(); + $this->formatter->block($this->scope); + $out = ob_get_clean(); + setlocale(LC_NUMERIC, $locale); + return $out; + } + + public function compileFile($fname, $outFname = null) { + if (!is_readable($fname)) { + throw new Exception('load error: failed to find '.$fname); + } + + $pi = pathinfo($fname); + + $oldImport = $this->importDir; + + $this->importDir = (array)$this->importDir; + $this->importDir[] = $pi['dirname'].'/'; + + $this->addParsedFile($fname); + + $out = $this->compile(file_get_contents($fname), $fname); + + $this->importDir = $oldImport; + + if ($outFname !== null) { + return file_put_contents($outFname, $out); + } + + return $out; + } + + // compile only if changed input has changed or output doesn't exist + public function checkedCompile($in, $out) { + if (!is_file($out) || filemtime($in) > filemtime($out)) { + $this->compileFile($in, $out); + return true; + } + return false; + } + + /** + * Execute lessphp on a .less file or a lessphp cache structure + * + * The lessphp cache structure contains information about a specific + * less file having been parsed. It can be used as a hint for future + * calls to determine whether or not a rebuild is required. + * + * The cache structure contains two important keys that may be used + * externally: + * + * compiled: The final compiled CSS + * updated: The time (in seconds) the CSS was last compiled + * + * The cache structure is a plain-ol' PHP associative array and can + * be serialized and unserialized without a hitch. + * + * @param mixed $in Input + * @param bool $force Force rebuild? + * @return array lessphp cache structure + */ + public function cachedCompile($in, $force = false) { + // assume no root + $root = null; + + if (is_string($in)) { + $root = $in; + } elseif (is_array($in) && isset($in['root'])) { + if ($force || !isset($in['files'])) { + // If we are forcing a recompile or if for some reason the + // structure does not contain any file information we should + // specify the root to trigger a rebuild. + $root = $in['root']; + } elseif (isset($in['files']) && is_array($in['files'])) { + foreach ($in['files'] as $fname => $ftime) { + if (!file_exists($fname) || filemtime($fname) > $ftime) { + // One of the files we knew about previously has changed + // so we should look at our incoming root again. + $root = $in['root']; + break; + } + } + } + } else { + // TODO: Throw an exception? We got neither a string nor something + // that looks like a compatible lessphp cache structure. + return null; + } + + if ($root !== null) { + // If we have a root value which means we should rebuild. + $out = array(); + $out['root'] = $root; + $out['compiled'] = $this->compileFile($root); + $out['files'] = $this->allParsedFiles(); + $out['updated'] = time(); + return $out; + } else { + // No changes, pass back the structure + // we were given initially. + return $in; + } + + } + + // parse and compile buffer + // This is deprecated + public function parse($str = null, $initialVariables = null) { + if (is_array($str)) { + $initialVariables = $str; + $str = null; + } + + $oldVars = $this->registeredVars; + if ($initialVariables !== null) { + $this->setVariables($initialVariables); + } + + if ($str == null) { + if (empty($this->_parseFile)) { + throw new exception("nothing to parse"); + } + + $out = $this->compileFile($this->_parseFile); + } else { + $out = $this->compile($str); + } + + $this->registeredVars = $oldVars; + return $out; + } + + protected function makeParser($name) { + $parser = new lessc_parser($this, $name); + $parser->writeComments = $this->preserveComments; + + return $parser; + } + + public function setFormatter($name) { + $this->formatterName = $name; + } + + protected function newFormatter() { + $className = "lessc_formatter_lessjs"; + if (!empty($this->formatterName)) { + if (!is_string($this->formatterName)) + return $this->formatterName; + $className = "lessc_formatter_$this->formatterName"; + } + + return new $className; + } + + public function setPreserveComments($preserve) { + $this->preserveComments = $preserve; + } + + public function registerFunction($name, $func) { + $this->libFunctions[$name] = $func; + } + + public function unregisterFunction($name) { + unset($this->libFunctions[$name]); + } + + public function setVariables($variables) { + $this->registeredVars = array_merge($this->registeredVars, $variables); + } + + public function unsetVariable($name) { + unset($this->registeredVars[$name]); + } + + public function setImportDir($dirs) { + $this->importDir = (array)$dirs; + } + + public function addImportDir($dir) { + $this->importDir = (array)$this->importDir; + $this->importDir[] = $dir; + } + + public function allParsedFiles() { + return $this->allParsedFiles; + } + + public function addParsedFile($file) { + $this->allParsedFiles[realpath($file)] = filemtime($file); + } + + /** + * Uses the current value of $this->count to show line and line number + */ + public function throwError($msg = null) { + if ($this->sourceLoc >= 0) { + $this->sourceParser->throwError($msg, $this->sourceLoc); + } + throw new exception($msg); + } + + // compile file $in to file $out if $in is newer than $out + // returns true when it compiles, false otherwise + public static function ccompile($in, $out, $less = null) { + if ($less === null) { + $less = new self; + } + return $less->checkedCompile($in, $out); + } + + public static function cexecute($in, $force = false, $less = null) { + if ($less === null) { + $less = new self; + } + return $less->cachedCompile($in, $force); + } + + static protected $cssColors = array( + 'aliceblue' => '240,248,255', + 'antiquewhite' => '250,235,215', + 'aqua' => '0,255,255', + 'aquamarine' => '127,255,212', + 'azure' => '240,255,255', + 'beige' => '245,245,220', + 'bisque' => '255,228,196', + 'black' => '0,0,0', + 'blanchedalmond' => '255,235,205', + 'blue' => '0,0,255', + 'blueviolet' => '138,43,226', + 'brown' => '165,42,42', + 'burlywood' => '222,184,135', + 'cadetblue' => '95,158,160', + 'chartreuse' => '127,255,0', + 'chocolate' => '210,105,30', + 'coral' => '255,127,80', + 'cornflowerblue' => '100,149,237', + 'cornsilk' => '255,248,220', + 'crimson' => '220,20,60', + 'cyan' => '0,255,255', + 'darkblue' => '0,0,139', + 'darkcyan' => '0,139,139', + 'darkgoldenrod' => '184,134,11', + 'darkgray' => '169,169,169', + 'darkgreen' => '0,100,0', + 'darkgrey' => '169,169,169', + 'darkkhaki' => '189,183,107', + 'darkmagenta' => '139,0,139', + 'darkolivegreen' => '85,107,47', + 'darkorange' => '255,140,0', + 'darkorchid' => '153,50,204', + 'darkred' => '139,0,0', + 'darksalmon' => '233,150,122', + 'darkseagreen' => '143,188,143', + 'darkslateblue' => '72,61,139', + 'darkslategray' => '47,79,79', + 'darkslategrey' => '47,79,79', + 'darkturquoise' => '0,206,209', + 'darkviolet' => '148,0,211', + 'deeppink' => '255,20,147', + 'deepskyblue' => '0,191,255', + 'dimgray' => '105,105,105', + 'dimgrey' => '105,105,105', + 'dodgerblue' => '30,144,255', + 'firebrick' => '178,34,34', + 'floralwhite' => '255,250,240', + 'forestgreen' => '34,139,34', + 'fuchsia' => '255,0,255', + 'gainsboro' => '220,220,220', + 'ghostwhite' => '248,248,255', + 'gold' => '255,215,0', + 'goldenrod' => '218,165,32', + 'gray' => '128,128,128', + 'green' => '0,128,0', + 'greenyellow' => '173,255,47', + 'grey' => '128,128,128', + 'honeydew' => '240,255,240', + 'hotpink' => '255,105,180', + 'indianred' => '205,92,92', + 'indigo' => '75,0,130', + 'ivory' => '255,255,240', + 'khaki' => '240,230,140', + 'lavender' => '230,230,250', + 'lavenderblush' => '255,240,245', + 'lawngreen' => '124,252,0', + 'lemonchiffon' => '255,250,205', + 'lightblue' => '173,216,230', + 'lightcoral' => '240,128,128', + 'lightcyan' => '224,255,255', + 'lightgoldenrodyellow' => '250,250,210', + 'lightgray' => '211,211,211', + 'lightgreen' => '144,238,144', + 'lightgrey' => '211,211,211', + 'lightpink' => '255,182,193', + 'lightsalmon' => '255,160,122', + 'lightseagreen' => '32,178,170', + 'lightskyblue' => '135,206,250', + 'lightslategray' => '119,136,153', + 'lightslategrey' => '119,136,153', + 'lightsteelblue' => '176,196,222', + 'lightyellow' => '255,255,224', + 'lime' => '0,255,0', + 'limegreen' => '50,205,50', + 'linen' => '250,240,230', + 'magenta' => '255,0,255', + 'maroon' => '128,0,0', + 'mediumaquamarine' => '102,205,170', + 'mediumblue' => '0,0,205', + 'mediumorchid' => '186,85,211', + 'mediumpurple' => '147,112,219', + 'mediumseagreen' => '60,179,113', + 'mediumslateblue' => '123,104,238', + 'mediumspringgreen' => '0,250,154', + 'mediumturquoise' => '72,209,204', + 'mediumvioletred' => '199,21,133', + 'midnightblue' => '25,25,112', + 'mintcream' => '245,255,250', + 'mistyrose' => '255,228,225', + 'moccasin' => '255,228,181', + 'navajowhite' => '255,222,173', + 'navy' => '0,0,128', + 'oldlace' => '253,245,230', + 'olive' => '128,128,0', + 'olivedrab' => '107,142,35', + 'orange' => '255,165,0', + 'orangered' => '255,69,0', + 'orchid' => '218,112,214', + 'palegoldenrod' => '238,232,170', + 'palegreen' => '152,251,152', + 'paleturquoise' => '175,238,238', + 'palevioletred' => '219,112,147', + 'papayawhip' => '255,239,213', + 'peachpuff' => '255,218,185', + 'peru' => '205,133,63', + 'pink' => '255,192,203', + 'plum' => '221,160,221', + 'powderblue' => '176,224,230', + 'purple' => '128,0,128', + 'red' => '255,0,0', + 'rosybrown' => '188,143,143', + 'royalblue' => '65,105,225', + 'saddlebrown' => '139,69,19', + 'salmon' => '250,128,114', + 'sandybrown' => '244,164,96', + 'seagreen' => '46,139,87', + 'seashell' => '255,245,238', + 'sienna' => '160,82,45', + 'silver' => '192,192,192', + 'skyblue' => '135,206,235', + 'slateblue' => '106,90,205', + 'slategray' => '112,128,144', + 'slategrey' => '112,128,144', + 'snow' => '255,250,250', + 'springgreen' => '0,255,127', + 'steelblue' => '70,130,180', + 'tan' => '210,180,140', + 'teal' => '0,128,128', + 'thistle' => '216,191,216', + 'tomato' => '255,99,71', + 'transparent' => '0,0,0,0', + 'turquoise' => '64,224,208', + 'violet' => '238,130,238', + 'wheat' => '245,222,179', + 'white' => '255,255,255', + 'whitesmoke' => '245,245,245', + 'yellow' => '255,255,0', + 'yellowgreen' => '154,205,50' + ); +} + +// responsible for taking a string of LESS code and converting it into a +// syntax tree +class lessc_parser { + static protected $nextBlockId = 0; // used to uniquely identify blocks + + static protected $precedence = array( + '=<' => 0, + '>=' => 0, + '=' => 0, + '<' => 0, + '>' => 0, + + '+' => 1, + '-' => 1, + '*' => 2, + '/' => 2, + '%' => 2, + ); + + static protected $whitePattern; + static protected $commentMulti; + + static protected $commentSingle = "//"; + static protected $commentMultiLeft = "/*"; + static protected $commentMultiRight = "*/"; + + // regex string to match any of the operators + static protected $operatorString; + + // these properties will supress division unless it's inside parenthases + static protected $supressDivisionProps = + array('/border-radius$/i', '/^font$/i'); + + protected $blockDirectives = array("font-face", "keyframes", "page", "-moz-document", "viewport", "-moz-viewport", "-o-viewport", "-ms-viewport"); + protected $lineDirectives = array("charset"); + + /** + * if we are in parens we can be more liberal with whitespace around + * operators because it must evaluate to a single value and thus is less + * ambiguous. + * + * Consider: + * property1: 10 -5; // is two numbers, 10 and -5 + * property2: (10 -5); // should evaluate to 5 + */ + protected $inParens = false; + + // caches preg escaped literals + static protected $literalCache = array(); + + public function __construct($lessc, $sourceName = null) { + $this->eatWhiteDefault = true; + // reference to less needed for vPrefix, mPrefix, and parentSelector + $this->lessc = $lessc; + + $this->sourceName = $sourceName; // name used for error messages + + $this->writeComments = false; + + if (!self::$operatorString) { + self::$operatorString = + '('.implode('|', array_map(array('lessc', 'preg_quote'), + array_keys(self::$precedence))).')'; + + $commentSingle = lessc::preg_quote(self::$commentSingle); + $commentMultiLeft = lessc::preg_quote(self::$commentMultiLeft); + $commentMultiRight = lessc::preg_quote(self::$commentMultiRight); + + self::$commentMulti = $commentMultiLeft.'.*?'.$commentMultiRight; + self::$whitePattern = '/'.$commentSingle.'[^\n]*\s*|('.self::$commentMulti.')\s*|\s+/Ais'; + } + } + + public function parse($buffer) { + $this->count = 0; + $this->line = 1; + + $this->env = null; // block stack + $this->buffer = $this->writeComments ? $buffer : $this->removeComments($buffer); + $this->pushSpecialBlock("root"); + $this->eatWhiteDefault = true; + $this->seenComments = array(); + + // trim whitespace on head + // if (preg_match('/^\s+/', $this->buffer, $m)) { + // $this->line += substr_count($m[0], "\n"); + // $this->buffer = ltrim($this->buffer); + // } + $this->whitespace(); + + // parse the entire file + while (false !== $this->parseChunk()); + + if ($this->count != strlen($this->buffer)) + $this->throwError(); + + // TODO report where the block was opened + if ( !property_exists($this->env, 'parent') || !is_null($this->env->parent) ) + throw new exception('parse error: unclosed block'); + + return $this->env; + } + + /** + * Parse a single chunk off the head of the buffer and append it to the + * current parse environment. + * Returns false when the buffer is empty, or when there is an error. + * + * This function is called repeatedly until the entire document is + * parsed. + * + * This parser is most similar to a recursive descent parser. Single + * functions represent discrete grammatical rules for the language, and + * they are able to capture the text that represents those rules. + * + * Consider the function lessc::keyword(). (all parse functions are + * structured the same) + * + * The function takes a single reference argument. When calling the + * function it will attempt to match a keyword on the head of the buffer. + * If it is successful, it will place the keyword in the referenced + * argument, advance the position in the buffer, and return true. If it + * fails then it won't advance the buffer and it will return false. + * + * All of these parse functions are powered by lessc::match(), which behaves + * the same way, but takes a literal regular expression. Sometimes it is + * more convenient to use match instead of creating a new function. + * + * Because of the format of the functions, to parse an entire string of + * grammatical rules, you can chain them together using &&. + * + * But, if some of the rules in the chain succeed before one fails, then + * the buffer position will be left at an invalid state. In order to + * avoid this, lessc::seek() is used to remember and set buffer positions. + * + * Before parsing a chain, use $s = $this->seek() to remember the current + * position into $s. Then if a chain fails, use $this->seek($s) to + * go back where we started. + */ + protected function parseChunk() { + if (empty($this->buffer)) return false; + $s = $this->seek(); + + if ($this->whitespace()) { + return true; + } + + // setting a property + if ($this->keyword($key) && $this->assign() && + $this->propertyValue($value, $key) && $this->end() + ) { + $this->append(array('assign', $key, $value), $s); + return true; + } else { + $this->seek($s); + } + + + // look for special css blocks + if ($this->literal('@', false)) { + $this->count--; + + // media + if ($this->literal('@media')) { + if (($this->mediaQueryList($mediaQueries) || true) + && $this->literal('{') + ) { + $media = $this->pushSpecialBlock("media"); + $media->queries = is_null($mediaQueries) ? array() : $mediaQueries; + return true; + } else { + $this->seek($s); + return false; + } + } + + if ($this->literal("@", false) && $this->keyword($dirName)) { + if ($this->isDirective($dirName, $this->blockDirectives)) { + if (($this->openString("{", $dirValue, null, array(";")) || true) && + $this->literal("{") + ) { + $dir = $this->pushSpecialBlock("directive"); + $dir->name = $dirName; + if (isset($dirValue)) $dir->value = $dirValue; + return true; + } + } elseif ($this->isDirective($dirName, $this->lineDirectives)) { + if ($this->propertyValue($dirValue) && $this->end()) { + $this->append(array("directive", $dirName, $dirValue)); + return true; + } + } + } + + $this->seek($s); + } + + // setting a variable + if ($this->variable($var) && $this->assign() && + $this->propertyValue($value) && $this->end() + ) { + $this->append(array('assign', $var, $value), $s); + return true; + } else { + $this->seek($s); + } + + if ($this->import($importValue)) { + $this->append($importValue, $s); + return true; + } + + // opening parametric mixin + if ($this->tag($tag, true) && $this->argumentDef($args, $isVararg) && + ($this->guards($guards) || true) && + $this->literal('{') + ) { + $block = $this->pushBlock($this->fixTags(array($tag))); + $block->args = $args; + $block->isVararg = $isVararg; + if (!empty($guards)) $block->guards = $guards; + return true; + } else { + $this->seek($s); + } + + // opening a simple block + if ($this->tags($tags) && $this->literal('{', false)) { + $tags = $this->fixTags($tags); + $this->pushBlock($tags); + return true; + } else { + $this->seek($s); + } + + // closing a block + if ($this->literal('}', false)) { + try { + $block = $this->pop(); + } catch (exception $e) { + $this->seek($s); + $this->throwError($e->getMessage()); + } + + $hidden = false; + if (is_null($block->type)) { + $hidden = true; + if (!isset($block->args)) { + foreach ($block->tags as $tag) { + if (!is_string($tag) || $tag{0} != $this->lessc->mPrefix) { + $hidden = false; + break; + } + } + } + + foreach ($block->tags as $tag) { + if (is_string($tag)) { + $this->env->children[$tag][] = $block; + } + } + } + + if (!$hidden) { + $this->append(array('block', $block), $s); + } + + // this is done here so comments aren't bundled into he block that + // was just closed + $this->whitespace(); + return true; + } + + // mixin + if ($this->mixinTags($tags) && + ($this->argumentDef($argv, $isVararg) || true) && + ($this->keyword($suffix) || true) && $this->end() + ) { + $tags = $this->fixTags($tags); + $this->append(array('mixin', $tags, $argv, $suffix), $s); + return true; + } else { + $this->seek($s); + } + + // spare ; + if ($this->literal(';')) return true; + + return false; // got nothing, throw error + } + + protected function isDirective($dirname, $directives) { + // TODO: cache pattern in parser + $pattern = implode("|", + array_map(array("lessc", "preg_quote"), $directives)); + $pattern = '/^(-[a-z-]+-)?(' . $pattern . ')$/i'; + + return preg_match($pattern, $dirname); + } + + protected function fixTags($tags) { + // move @ tags out of variable namespace + foreach ($tags as &$tag) { + if ($tag{0} == $this->lessc->vPrefix) + $tag[0] = $this->lessc->mPrefix; + } + return $tags; + } + + // a list of expressions + protected function expressionList(&$exps) { + $values = array(); + + while ($this->expression($exp)) { + $values[] = $exp; + } + + if (count($values) == 0) return false; + + $exps = lessc::compressList($values, ' '); + return true; + } + + /** + * Attempt to consume an expression. + * @link http://en.wikipedia.org/wiki/Operator-precedence_parser#Pseudo-code + */ + protected function expression(&$out) { + if ($this->value($lhs)) { + $out = $this->expHelper($lhs, 0); + + // look for / shorthand + if (!empty($this->env->supressedDivision)) { + unset($this->env->supressedDivision); + $s = $this->seek(); + if ($this->literal("/") && $this->value($rhs)) { + $out = array("list", "", + array($out, array("keyword", "/"), $rhs)); + } else { + $this->seek($s); + } + } + + return true; + } + return false; + } + + /** + * recursively parse infix equation with $lhs at precedence $minP + */ + protected function expHelper($lhs, $minP) { + $this->inExp = true; + $ss = $this->seek(); + + while (true) { + $whiteBefore = isset($this->buffer[$this->count - 1]) && + ctype_space($this->buffer[$this->count - 1]); + + // If there is whitespace before the operator, then we require + // whitespace after the operator for it to be an expression + $needWhite = $whiteBefore && !$this->inParens; + + if ($this->match(self::$operatorString.($needWhite ? '\s' : ''), $m) && self::$precedence[$m[1]] >= $minP) { + if (!$this->inParens && isset($this->env->currentProperty) && $m[1] == "/" && empty($this->env->supressedDivision)) { + foreach (self::$supressDivisionProps as $pattern) { + if (preg_match($pattern, $this->env->currentProperty)) { + $this->env->supressedDivision = true; + break 2; + } + } + } + + + $whiteAfter = isset($this->buffer[$this->count - 1]) && + ctype_space($this->buffer[$this->count - 1]); + + if (!$this->value($rhs)) break; + + // peek for next operator to see what to do with rhs + if ($this->peek(self::$operatorString, $next) && self::$precedence[$next[1]] > self::$precedence[$m[1]]) { + $rhs = $this->expHelper($rhs, self::$precedence[$next[1]]); + } + + $lhs = array('expression', $m[1], $lhs, $rhs, $whiteBefore, $whiteAfter); + $ss = $this->seek(); + + continue; + } + + break; + } + + $this->seek($ss); + + return $lhs; + } + + // consume a list of values for a property + public function propertyValue(&$value, $keyName = null) { + $values = array(); + + if ($keyName !== null) $this->env->currentProperty = $keyName; + + $s = null; + while ($this->expressionList($v)) { + $values[] = $v; + $s = $this->seek(); + if (!$this->literal(',')) break; + } + + if ($s) $this->seek($s); + + if ($keyName !== null) unset($this->env->currentProperty); + + if (count($values) == 0) return false; + + $value = lessc::compressList($values, ', '); + return true; + } + + protected function parenValue(&$out) { + $s = $this->seek(); + + // speed shortcut + if (isset($this->buffer[$this->count]) && $this->buffer[$this->count] != "(") { + return false; + } + + $inParens = $this->inParens; + if ($this->literal("(") && + ($this->inParens = true) && $this->expression($exp) && + $this->literal(")") + ) { + $out = $exp; + $this->inParens = $inParens; + return true; + } else { + $this->inParens = $inParens; + $this->seek($s); + } + + return false; + } + + // a single value + protected function value(&$value) { + $s = $this->seek(); + + // speed shortcut + if (isset($this->buffer[$this->count]) && $this->buffer[$this->count] == "-") { + // negation + if ($this->literal("-", false) && + (($this->variable($inner) && $inner = array("variable", $inner)) || + $this->unit($inner) || + $this->parenValue($inner)) + ) { + $value = array("unary", "-", $inner); + return true; + } else { + $this->seek($s); + } + } + + if ($this->parenValue($value)) return true; + if ($this->unit($value)) return true; + if ($this->color($value)) return true; + if ($this->func($value)) return true; + if ($this->string($value)) return true; + + if ($this->keyword($word)) { + $value = array('keyword', $word); + return true; + } + + // try a variable + if ($this->variable($var)) { + $value = array('variable', $var); + return true; + } + + // unquote string (should this work on any type? + if ($this->literal("~") && $this->string($str)) { + $value = array("escape", $str); + return true; + } else { + $this->seek($s); + } + + // css hack: \0 + if ($this->literal('\\') && $this->match('([0-9]+)', $m)) { + $value = array('keyword', '\\'.$m[1]); + return true; + } else { + $this->seek($s); + } + + return false; + } + + // an import statement + protected function import(&$out) { + if (!$this->literal('@import')) return false; + + // @import "something.css" media; + // @import url("something.css") media; + // @import url(something.css) media; + + if ($this->propertyValue($value)) { + $out = array("import", $value); + return true; + } + } + + protected function mediaQueryList(&$out) { + if ($this->genericList($list, "mediaQuery", ",", false)) { + $out = $list[2]; + return true; + } + return false; + } + + protected function mediaQuery(&$out) { + $s = $this->seek(); + + $expressions = null; + $parts = array(); + + if (($this->literal("only") && ($only = true) || $this->literal("not") && ($not = true) || true) && $this->keyword($mediaType)) { + $prop = array("mediaType"); + if (isset($only)) $prop[] = "only"; + if (isset($not)) $prop[] = "not"; + $prop[] = $mediaType; + $parts[] = $prop; + } else { + $this->seek($s); + } + + + if (!empty($mediaType) && !$this->literal("and")) { + // ~ + } else { + $this->genericList($expressions, "mediaExpression", "and", false); + if (is_array($expressions)) $parts = array_merge($parts, $expressions[2]); + } + + if (count($parts) == 0) { + $this->seek($s); + return false; + } + + $out = $parts; + return true; + } + + protected function mediaExpression(&$out) { + $s = $this->seek(); + $value = null; + if ($this->literal("(") && + $this->keyword($feature) && + ($this->literal(":") && $this->expression($value) || true) && + $this->literal(")") + ) { + $out = array("mediaExp", $feature); + if ($value) $out[] = $value; + return true; + } elseif ($this->variable($variable)) { + $out = array('variable', $variable); + return true; + } + + $this->seek($s); + return false; + } + + // an unbounded string stopped by $end + protected function openString($end, &$out, $nestingOpen=null, $rejectStrs = null) { + $oldWhite = $this->eatWhiteDefault; + $this->eatWhiteDefault = false; + + $stop = array("'", '"', "@{", $end); + $stop = array_map(array("lessc", "preg_quote"), $stop); + // $stop[] = self::$commentMulti; + + if (!is_null($rejectStrs)) { + $stop = array_merge($stop, $rejectStrs); + } + + $patt = '(.*?)('.implode("|", $stop).')'; + + $nestingLevel = 0; + + $content = array(); + while ($this->match($patt, $m, false)) { + if (!empty($m[1])) { + $content[] = $m[1]; + if ($nestingOpen) { + $nestingLevel += substr_count($m[1], $nestingOpen); + } + } + + $tok = $m[2]; + + $this->count-= strlen($tok); + if ($tok == $end) { + if ($nestingLevel == 0) { + break; + } else { + $nestingLevel--; + } + } + + if (($tok == "'" || $tok == '"') && $this->string($str)) { + $content[] = $str; + continue; + } + + if ($tok == "@{" && $this->interpolation($inter)) { + $content[] = $inter; + continue; + } + + if (!empty($rejectStrs) && in_array($tok, $rejectStrs)) { + break; + } + + $content[] = $tok; + $this->count+= strlen($tok); + } + + $this->eatWhiteDefault = $oldWhite; + + if (count($content) == 0) return false; + + // trim the end + if (is_string(end($content))) { + $content[count($content) - 1] = rtrim(end($content)); + } + + $out = array("string", "", $content); + return true; + } + + protected function string(&$out) { + $s = $this->seek(); + if ($this->literal('"', false)) { + $delim = '"'; + } elseif ($this->literal("'", false)) { + $delim = "'"; + } else { + return false; + } + + $content = array(); + + // look for either ending delim , escape, or string interpolation + $patt = '([^\n]*?)(@\{|\\\\|' . + lessc::preg_quote($delim).')'; + + $oldWhite = $this->eatWhiteDefault; + $this->eatWhiteDefault = false; + + while ($this->match($patt, $m, false)) { + $content[] = $m[1]; + if ($m[2] == "@{") { + $this->count -= strlen($m[2]); + if ($this->interpolation($inter, false)) { + $content[] = $inter; + } else { + $this->count += strlen($m[2]); + $content[] = "@{"; // ignore it + } + } elseif ($m[2] == '\\') { + $content[] = $m[2]; + if ($this->literal($delim, false)) { + $content[] = $delim; + } + } else { + $this->count -= strlen($delim); + break; // delim + } + } + + $this->eatWhiteDefault = $oldWhite; + + if ($this->literal($delim)) { + $out = array("string", $delim, $content); + return true; + } + + $this->seek($s); + return false; + } + + protected function interpolation(&$out) { + $oldWhite = $this->eatWhiteDefault; + $this->eatWhiteDefault = true; + + $s = $this->seek(); + if ($this->literal("@{") && + $this->openString("}", $interp, null, array("'", '"', ";")) && + $this->literal("}", false) + ) { + $out = array("interpolate", $interp); + $this->eatWhiteDefault = $oldWhite; + if ($this->eatWhiteDefault) $this->whitespace(); + return true; + } + + $this->eatWhiteDefault = $oldWhite; + $this->seek($s); + return false; + } + + protected function unit(&$unit) { + // speed shortcut + if (isset($this->buffer[$this->count])) { + $char = $this->buffer[$this->count]; + if (!ctype_digit($char) && $char != ".") return false; + } + + if ($this->match('([0-9]+(?:\.[0-9]*)?|\.[0-9]+)([%a-zA-Z]+)?', $m)) { + $unit = array("number", $m[1], empty($m[2]) ? "" : $m[2]); + return true; + } + return false; + } + + // a # color + protected function color(&$out) { + if ($this->match('(#(?:[0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{3}))', $m)) { + if (strlen($m[1]) > 7) { + $out = array("string", "", array($m[1])); + } else { + $out = array("raw_color", $m[1]); + } + return true; + } + + return false; + } + + // consume an argument definition list surrounded by () + // each argument is a variable name with optional value + // or at the end a ... or a variable named followed by ... + // arguments are separated by , unless a ; is in the list, then ; is the + // delimiter. + protected function argumentDef(&$args, &$isVararg) { + $s = $this->seek(); + if (!$this->literal('(')) { + return false; + } + + $values = array(); + $delim = ","; + $method = "expressionList"; + + $isVararg = false; + while (true) { + if ($this->literal("...")) { + $isVararg = true; + break; + } + + if ($this->$method($value)) { + if ($value[0] == "variable") { + $arg = array("arg", $value[1]); + $ss = $this->seek(); + + if ($this->assign() && $this->$method($rhs)) { + $arg[] = $rhs; + } else { + $this->seek($ss); + if ($this->literal("...")) { + $arg[0] = "rest"; + $isVararg = true; + } + } + + $values[] = $arg; + if ($isVararg) { + break; + } + continue; + } else { + $values[] = array("lit", $value); + } + } + + + if (!$this->literal($delim)) { + if ($delim == "," && $this->literal(";")) { + // found new delim, convert existing args + $delim = ";"; + $method = "propertyValue"; + + // transform arg list + if (isset($values[1])) { // 2 items + $newList = array(); + foreach ($values as $i => $arg) { + switch ($arg[0]) { + case "arg": + if ($i) { + $this->throwError("Cannot mix ; and , as delimiter types"); + } + $newList[] = $arg[2]; + break; + case "lit": + $newList[] = $arg[1]; + break; + case "rest": + $this->throwError("Unexpected rest before semicolon"); + } + } + + $newList = array("list", ", ", $newList); + + switch ($values[0][0]) { + case "arg": + $newArg = array("arg", $values[0][1], $newList); + break; + case "lit": + $newArg = array("lit", $newList); + break; + } + + } elseif ($values) { // 1 item + $newArg = $values[0]; + } + + if ($newArg) { + $values = array($newArg); + } + } else { + break; + } + } + } + + if (!$this->literal(')')) { + $this->seek($s); + return false; + } + + $args = $values; + + return true; + } + + // consume a list of tags + // this accepts a hanging delimiter + protected function tags(&$tags, $simple = false, $delim = ',') { + $tags = array(); + while ($this->tag($tt, $simple)) { + $tags[] = $tt; + if (!$this->literal($delim)) break; + } + if (count($tags) == 0) return false; + + return true; + } + + // list of tags of specifying mixin path + // optionally separated by > (lazy, accepts extra >) + protected function mixinTags(&$tags) { + $tags = array(); + while ($this->tag($tt, true)) { + $tags[] = $tt; + $this->literal(">"); + } + + if (!$tags) { + return false; + } + + return true; + } + + // a bracketed value (contained within in a tag definition) + protected function tagBracket(&$parts, &$hasExpression) { + // speed shortcut + if (isset($this->buffer[$this->count]) && $this->buffer[$this->count] != "[") { + return false; + } + + $s = $this->seek(); + + $hasInterpolation = false; + + if ($this->literal("[", false)) { + $attrParts = array("["); + // keyword, string, operator + while (true) { + if ($this->literal("]", false)) { + $this->count--; + break; // get out early + } + + if ($this->match('\s+', $m)) { + $attrParts[] = " "; + continue; + } + if ($this->string($str)) { + // escape parent selector, (yuck) + foreach ($str[2] as &$chunk) { + $chunk = str_replace($this->lessc->parentSelector, "$&$", $chunk); + } + + $attrParts[] = $str; + $hasInterpolation = true; + continue; + } + + if ($this->keyword($word)) { + $attrParts[] = $word; + continue; + } + + if ($this->interpolation($inter, false)) { + $attrParts[] = $inter; + $hasInterpolation = true; + continue; + } + + // operator, handles attr namespace too + if ($this->match('[|-~\$\*\^=]+', $m)) { + $attrParts[] = $m[0]; + continue; + } + + break; + } + + if ($this->literal("]", false)) { + $attrParts[] = "]"; + foreach ($attrParts as $part) { + $parts[] = $part; + } + $hasExpression = $hasExpression || $hasInterpolation; + return true; + } + $this->seek($s); + } + + $this->seek($s); + return false; + } + + // a space separated list of selectors + protected function tag(&$tag, $simple = false) { + if ($simple) { + $chars = '^@,:;{}\][>\(\) "\''; + } else { + $chars = '^@,;{}["\''; + } + $s = $this->seek(); + + $hasExpression = false; + $parts = array(); + while ($this->tagBracket($parts, $hasExpression)); + + $oldWhite = $this->eatWhiteDefault; + $this->eatWhiteDefault = false; + + while (true) { + if ($this->match('(['.$chars.'0-9]['.$chars.']*)', $m)) { + $parts[] = $m[1]; + if ($simple) break; + + while ($this->tagBracket($parts, $hasExpression)); + continue; + } + + if (isset($this->buffer[$this->count]) && $this->buffer[$this->count] == "@") { + if ($this->interpolation($interp)) { + $hasExpression = true; + $interp[2] = true; // don't unescape + $parts[] = $interp; + continue; + } + + if ($this->literal("@")) { + $parts[] = "@"; + continue; + } + } + + if ($this->unit($unit)) { // for keyframes + $parts[] = $unit[1]; + $parts[] = $unit[2]; + continue; + } + + break; + } + + $this->eatWhiteDefault = $oldWhite; + if (!$parts) { + $this->seek($s); + return false; + } + + if ($hasExpression) { + $tag = array("exp", array("string", "", $parts)); + } else { + $tag = trim(implode($parts)); + } + + $this->whitespace(); + return true; + } + + // a css function + protected function func(&$func) { + $s = $this->seek(); + + if ($this->match('(%|[\w\-_][\w\-_:\.]+|[\w_])', $m) && $this->literal('(')) { + $fname = $m[1]; + + $sPreArgs = $this->seek(); + + $args = array(); + while (true) { + $ss = $this->seek(); + // this ugly nonsense is for ie filter properties + if ($this->keyword($name) && $this->literal('=') && $this->expressionList($value)) { + $args[] = array("string", "", array($name, "=", $value)); + } else { + $this->seek($ss); + if ($this->expressionList($value)) { + $args[] = $value; + } + } + + if (!$this->literal(',')) break; + } + $args = array('list', ',', $args); + + if ($this->literal(')')) { + $func = array('function', $fname, $args); + return true; + } elseif ($fname == 'url') { + // couldn't parse and in url? treat as string + $this->seek($sPreArgs); + if ($this->openString(")", $string) && $this->literal(")")) { + $func = array('function', $fname, $string); + return true; + } + } + } + + $this->seek($s); + return false; + } + + // consume a less variable + protected function variable(&$name) { + $s = $this->seek(); + if ($this->literal($this->lessc->vPrefix, false) && + ($this->variable($sub) || $this->keyword($name)) + ) { + if (!empty($sub)) { + $name = array('variable', $sub); + } else { + $name = $this->lessc->vPrefix.$name; + } + return true; + } + + $name = null; + $this->seek($s); + return false; + } + + /** + * Consume an assignment operator + * Can optionally take a name that will be set to the current property name + */ + protected function assign($name = null) { + if ($name) $this->currentProperty = $name; + return $this->literal(':') || $this->literal('='); + } + + // consume a keyword + protected function keyword(&$word) { + if ($this->match('([\w_\-\*!"][\w\-_"]*)', $m)) { + $word = $m[1]; + return true; + } + return false; + } + + // consume an end of statement delimiter + protected function end() { + if ($this->literal(';', false)) { + return true; + } elseif ($this->count == strlen($this->buffer) || $this->buffer[$this->count] == '}') { + // if there is end of file or a closing block next then we don't need a ; + return true; + } + return false; + } + + protected function guards(&$guards) { + $s = $this->seek(); + + if (!$this->literal("when")) { + $this->seek($s); + return false; + } + + $guards = array(); + + while ($this->guardGroup($g)) { + $guards[] = $g; + if (!$this->literal(",")) break; + } + + if (count($guards) == 0) { + $guards = null; + $this->seek($s); + return false; + } + + return true; + } + + // a bunch of guards that are and'd together + // TODO rename to guardGroup + protected function guardGroup(&$guardGroup) { + $s = $this->seek(); + $guardGroup = array(); + while ($this->guard($guard)) { + $guardGroup[] = $guard; + if (!$this->literal("and")) break; + } + + if (count($guardGroup) == 0) { + $guardGroup = null; + $this->seek($s); + return false; + } + + return true; + } + + protected function guard(&$guard) { + $s = $this->seek(); + $negate = $this->literal("not"); + + if ($this->literal("(") && $this->expression($exp) && $this->literal(")")) { + $guard = $exp; + if ($negate) $guard = array("negate", $guard); + return true; + } + + $this->seek($s); + return false; + } + + /* raw parsing functions */ + + protected function literal($what, $eatWhitespace = null) { + if ($eatWhitespace === null) $eatWhitespace = $this->eatWhiteDefault; + + // shortcut on single letter + if (!isset($what[1]) && isset($this->buffer[$this->count])) { + if ($this->buffer[$this->count] == $what) { + if (!$eatWhitespace) { + $this->count++; + return true; + } + // goes below... + } else { + return false; + } + } + + if (!isset(self::$literalCache[$what])) { + self::$literalCache[$what] = lessc::preg_quote($what); + } + + return $this->match(self::$literalCache[$what], $m, $eatWhitespace); + } + + protected function genericList(&$out, $parseItem, $delim="", $flatten=true) { + $s = $this->seek(); + $items = array(); + while ($this->$parseItem($value)) { + $items[] = $value; + if ($delim) { + if (!$this->literal($delim)) break; + } + } + + if (count($items) == 0) { + $this->seek($s); + return false; + } + + if ($flatten && count($items) == 1) { + $out = $items[0]; + } else { + $out = array("list", $delim, $items); + } + + return true; + } + + + // advance counter to next occurrence of $what + // $until - don't include $what in advance + // $allowNewline, if string, will be used as valid char set + protected function to($what, &$out, $until = false, $allowNewline = false) { + if (is_string($allowNewline)) { + $validChars = $allowNewline; + } else { + $validChars = $allowNewline ? "." : "[^\n]"; + } + if (!$this->match('('.$validChars.'*?)'.lessc::preg_quote($what), $m, !$until)) return false; + if ($until) $this->count -= strlen($what); // give back $what + $out = $m[1]; + return true; + } + + // try to match something on head of buffer + protected function match($regex, &$out, $eatWhitespace = null) { + if ($eatWhitespace === null) $eatWhitespace = $this->eatWhiteDefault; + + $r = '/'.$regex.($eatWhitespace && !$this->writeComments ? '\s*' : '').'/Ais'; + if (preg_match($r, $this->buffer, $out, null, $this->count)) { + $this->count += strlen($out[0]); + if ($eatWhitespace && $this->writeComments) $this->whitespace(); + return true; + } + return false; + } + + // match some whitespace + protected function whitespace() { + if ($this->writeComments) { + $gotWhite = false; + while (preg_match(self::$whitePattern, $this->buffer, $m, null, $this->count)) { + if (isset($m[1]) && empty($this->seenComments[$this->count])) { + $this->append(array("comment", $m[1])); + $this->seenComments[$this->count] = true; + } + $this->count += strlen($m[0]); + $gotWhite = true; + } + return $gotWhite; + } else { + $this->match("", $m); + return strlen($m[0]) > 0; + } + } + + // match something without consuming it + protected function peek($regex, &$out = null, $from=null) { + if (is_null($from)) $from = $this->count; + $r = '/'.$regex.'/Ais'; + $result = preg_match($r, $this->buffer, $out, null, $from); + + return $result; + } + + // seek to a spot in the buffer or return where we are on no argument + protected function seek($where = null) { + if ($where === null) return $this->count; + else $this->count = $where; + return true; + } + + /* misc functions */ + + public function throwError($msg = "parse error", $count = null) { + $count = is_null($count) ? $this->count : $count; + + $line = $this->line + + substr_count(substr($this->buffer, 0, $count), "\n"); + + if (!empty($this->sourceName)) { + $loc = "$this->sourceName on line $line"; + } else { + $loc = "line: $line"; + } + + // TODO this depends on $this->count + if ($this->peek("(.*?)(\n|$)", $m, $count)) { + throw new exception("$msg: failed at `$m[1]` $loc"); + } else { + throw new exception("$msg: $loc"); + } + } + + protected function pushBlock($selectors=null, $type=null) { + $b = new stdclass; + $b->parent = $this->env; + + $b->type = $type; + $b->id = self::$nextBlockId++; + + $b->isVararg = false; // TODO: kill me from here + $b->tags = $selectors; + + $b->props = array(); + $b->children = array(); + + $this->env = $b; + return $b; + } + + // push a block that doesn't multiply tags + protected function pushSpecialBlock($type) { + return $this->pushBlock(null, $type); + } + + // append a property to the current block + protected function append($prop, $pos = null) { + if ($pos !== null) $prop[-1] = $pos; + $this->env->props[] = $prop; + } + + // pop something off the stack + protected function pop() { + $old = $this->env; + $this->env = $this->env->parent; + return $old; + } + + // remove comments from $text + // todo: make it work for all functions, not just url + protected function removeComments($text) { + $look = array( + 'url(', '//', '/*', '"', "'" + ); + + $out = ''; + $min = null; + while (true) { + // find the next item + foreach ($look as $token) { + $pos = strpos($text, $token); + if ($pos !== false) { + if (!isset($min) || $pos < $min[1]) $min = array($token, $pos); + } + } + + if (is_null($min)) break; + + $count = $min[1]; + $skip = 0; + $newlines = 0; + switch ($min[0]) { + case 'url(': + if (preg_match('/url\(.*?\)/', $text, $m, 0, $count)) + $count += strlen($m[0]) - strlen($min[0]); + break; + case '"': + case "'": + if (preg_match('/'.$min[0].'.*?(?indentLevel = 0; + } + + public function indentStr($n = 0) { + return str_repeat($this->indentChar, max($this->indentLevel + $n, 0)); + } + + public function property($name, $value) { + return $name . $this->assignSeparator . $value . ";"; + } + + protected function isEmpty($block) { + if (empty($block->lines)) { + foreach ($block->children as $child) { + if (!$this->isEmpty($child)) return false; + } + + return true; + } + return false; + } + + public function block($block) { + if ($this->isEmpty($block)) return; + + $inner = $pre = $this->indentStr(); + + $isSingle = !$this->disableSingle && + is_null($block->type) && count($block->lines) == 1; + + if (!empty($block->selectors)) { + $this->indentLevel++; + + if ($this->breakSelectors) { + $selectorSeparator = $this->selectorSeparator . $this->break . $pre; + } else { + $selectorSeparator = $this->selectorSeparator; + } + + echo $pre . + implode($selectorSeparator, $block->selectors); + if ($isSingle) { + echo $this->openSingle; + $inner = ""; + } else { + echo $this->open . $this->break; + $inner = $this->indentStr(); + } + + } + + if (!empty($block->lines)) { + $glue = $this->break.$inner; + echo $inner . implode($glue, $block->lines); + if (!$isSingle && !empty($block->children)) { + echo $this->break; + } + } + + foreach ($block->children as $child) { + $this->block($child); + } + + if (!empty($block->selectors)) { + if (!$isSingle && empty($block->children)) echo $this->break; + + if ($isSingle) { + echo $this->closeSingle . $this->break; + } else { + echo $pre . $this->close . $this->break; + } + + $this->indentLevel--; + } + } +} + +/** + * Class for compressed result + */ +class lessc_formatter_compressed extends lessc_formatter_classic { + public $disableSingle = true; + public $open = "{"; + public $selectorSeparator = ","; + public $assignSeparator = ":"; + public $break = ""; + public $compressColors = true; + + public function indentStr($n = 0) { + return ""; + } +} + +/** + * Class for lessjs + */ +class lessc_formatter_lessjs extends lessc_formatter_classic { + public $disableSingle = true; + public $breakSelectors = true; + public $assignSeparator = ": "; + public $selectorSeparator = ","; +} \ No newline at end of file From 1d2c2f855128bf54444646c1600b411142c25d76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= Date: Wed, 14 Aug 2019 23:00:40 +0200 Subject: [PATCH 153/228] NEW Add payments GET and POST REST API endpoints for supplierinvoices. --- htdocs/core/lib/website.lib.php | 4 +- .../class/api_supplier_invoices.class.php | 756 +++++++++++------- 2 files changed, 453 insertions(+), 307 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 4d89210cd44..579c5575988 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -33,7 +33,7 @@ * @return boolean True if OK * @see dolWebsiteOutput() for function used to replace content in a web server context */ -function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype='html') +function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype = 'html') { $nbrep = 0; @@ -187,7 +187,7 @@ function dolKeepOnlyPhpCode($str) * @return void * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context when USEDOLIBARREDITOR is not on */ -function dolWebsiteOutput($content, $contenttype='html', $containerid='') +function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') { global $db, $langs, $conf, $user; global $dolibarr_main_url_root, $dolibarr_main_data_root; diff --git a/htdocs/fourn/class/api_supplier_invoices.class.php b/htdocs/fourn/class/api_supplier_invoices.class.php index 416f7e11e94..56eeb2c17b5 100644 --- a/htdocs/fourn/class/api_supplier_invoices.class.php +++ b/htdocs/fourn/class/api_supplier_invoices.class.php @@ -19,357 +19,503 @@ use Luracast\Restler\RestException; require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT . '/fourn/class/paiementfourn.class.php'; /** * API class for supplier invoices * + * @property DoliDB db * @access protected * @class DolibarrApiAccess {@requires user,external} */ class SupplierInvoices extends DolibarrApi { - /** - * - * @var array $FIELDS Mandatory fields, checked when create and update object - */ - static $FIELDS = array( - 'socid', - ); + /** + * + * @var array $FIELDS Mandatory fields, checked when create and update object + */ + static $FIELDS = array( + 'socid', + ); - /** - * @var FactureFournisseur $invoice {@type FactureFournisseur} - */ - public $invoice; + /** + * @var FactureFournisseur $invoice {@type FactureFournisseur} + */ + public $invoice; - /** - * Constructor - */ - public function __construct() - { - global $db, $conf; - $this->db = $db; - $this->invoice = new FactureFournisseur($this->db); - } + /** + * Constructor + */ + public function __construct() + { + global $db; + $this->db = $db; + $this->invoice = new FactureFournisseur($this->db); + } - /** - * Get properties of a supplier invoice object - * - * Return an array with supplier invoice information - * - * @param int $id ID of supplier invoice - * @return array|mixed data without useless information - * - * @throws RestException - */ - public function get($id) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->lire) { - throw new RestException(401); - } + /** + * Get properties of a supplier invoice object + * + * Return an array with supplier invoice information + * + * @param int $id ID of supplier invoice + * @return array|mixed data without useless information + * + * @throws RestException + */ + public function get($id) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->lire) { + throw new RestException(401); + } - $result = $this->invoice->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Supplier invoice not found'); - } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Supplier invoice not found'); + } - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } - $this->invoice->fetchObjectLinked(); - return $this->_cleanObjectDatas($this->invoice); - } + $this->invoice->fetchObjectLinked(); + return $this->_cleanObjectDatas($this->invoice); + } - /** - * List invoices - * - * Get a list of supplier invoices - * - * @param string $sortfield Sort field - * @param string $sortorder Sort order - * @param int $limit Limit for list - * @param int $page Page number - * @param string $thirdparty_ids Thirdparty ids to filter invoices of. {@example '1' or '1,2,3'} {@pattern /^[0-9,]*$/i} - * @param string $status Filter by invoice status : draft | unpaid | paid | cancelled - * @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.ref:like:'SO-%') and (t.datec:<:'20160101')" - * @return array Array of invoice objects - * - * @throws RestException - */ - public function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids = '', $status = '', $sqlfilters = '') - { - global $db, $conf; + /** + * List invoices + * + * Get a list of supplier invoices + * + * @param string $sortfield Sort field + * @param string $sortorder Sort order + * @param int $limit Limit for list + * @param int $page Page number + * @param string $thirdparty_ids Thirdparty ids to filter invoices of. {@example '1' or '1,2,3'} {@pattern /^[0-9,]*$/i} + * @param string $status Filter by invoice status : draft | unpaid | paid | cancelled + * @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.ref:like:'SO-%') and (t.datec:<:'20160101')" + * @return array Array of invoice objects + * + * @throws RestException + */ + public function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids = '', $status = '', $sqlfilters = '') + { + global $db; - $obj_ret = array(); + $obj_ret = array(); - // case of external user, $thirdparty_ids param is ignored and replaced by user's socid - $socids = DolibarrApiAccess::$user->societe_id ? DolibarrApiAccess::$user->societe_id : $thirdparty_ids; + // case of external user, $thirdparty_ids param is ignored and replaced by user's socid + $socids = DolibarrApiAccess::$user->socid ? DolibarrApiAccess::$user->socid : $thirdparty_ids; - // If the internal user must only see his customers, force searching by him - $search_sale = 0; - if (! DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) $search_sale = DolibarrApiAccess::$user->id; + // If the internal user must only see his customers, force searching by him + $search_sale = 0; + if (! DolibarrApiAccess::$user->rights->societe->client->voir) $search_sale = DolibarrApiAccess::$user->id; - $sql = "SELECT t.rowid"; - if ((!DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) || $search_sale > 0) $sql .= ", sc.fk_soc, sc.fk_user"; // We need these fields in order to filter by sale (including the case where the user can only see his prospects) - $sql.= " FROM ".MAIN_DB_PREFIX."facture_fourn as t"; + $sql = "SELECT t.rowid"; + // We need these fields in order to filter by sale (including the case where the user can only see his prospects) + if (!DolibarrApiAccess::$user->rights->societe->client->voir || $search_sale > 0) $sql .= ", sc.fk_soc, sc.fk_user"; + $sql.= " FROM ".MAIN_DB_PREFIX."facture_fourn as t"; - if ((!DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) || $search_sale > 0) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; // We need this table joined to the select in order to filter by sale + // We need this table joined to the select in order to filter by sale + if (!DolibarrApiAccess::$user->rights->societe->client->voir || $search_sale > 0) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; - $sql.= ' WHERE t.entity IN ('.getEntity('supplier_invoice').')'; - if ((!DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) || $search_sale > 0) $sql.= " AND t.fk_soc = sc.fk_soc"; - if ($socids) $sql.= " AND t.fk_soc IN (".$socids.")"; - if ($search_sale > 0) $sql.= " AND t.rowid = sc.fk_soc"; // Join for the needed table to filter by sale + $sql.= ' WHERE t.entity IN ('.getEntity('supplier_invoice').')'; + if (!DolibarrApiAccess::$user->rights->societe->client->voir || $search_sale > 0) $sql.= " AND t.fk_soc = sc.fk_soc"; + if ($socids) $sql.= " AND t.fk_soc IN (".$socids.")"; + if ($search_sale > 0) $sql.= " AND t.rowid = sc.fk_soc"; // Join for the needed table to filter by sale - // Filter by status - if ($status == 'draft') { - $sql.= " AND t.fk_statut IN (0)"; - } - if ($status == 'unpaid') { - $sql.= " AND t.fk_statut IN (1)"; - } - if ($status == 'paid') { - $sql.= " AND t.fk_statut IN (2)"; - } - if ($status == 'cancelled') { - $sql.= " AND t.fk_statut IN (3)"; - } - // Insert sale filter - if ($search_sale > 0) { - $sql .= " AND sc.fk_user = ".$search_sale; - } - // Add sql filters - if ($sqlfilters) - { - if (! DolibarrApi::_checkFilters($sqlfilters)) - { - throw new RestException(503, 'Error when validating parameter sqlfilters '.$sqlfilters); - } - $regexstring='\(([^:\'\(\)]+:[^:\'\(\)]+:[^:\(\)]+)\)'; - $sql.=" AND (".preg_replace_callback('/'.$regexstring.'/', 'DolibarrApi::_forge_criteria_callback', $sqlfilters).")"; - } + // Filter by status + if ($status == 'draft') { + $sql.= " AND t.fk_statut IN (0)"; + } + if ($status == 'unpaid') { + $sql.= " AND t.fk_statut IN (1)"; + } + if ($status == 'paid') { + $sql.= " AND t.fk_statut IN (2)"; + } + if ($status == 'cancelled') { + $sql.= " AND t.fk_statut IN (3)"; + } + // Insert sale filter + if ($search_sale > 0) { + $sql .= " AND sc.fk_user = ".$search_sale; + } + // Add sql filters + if ($sqlfilters) + { + if (! DolibarrApi::_checkFilters($sqlfilters)) + { + throw new RestException(503, 'Error when validating parameter sqlfilters '.$sqlfilters); + } + $regexstring='\(([^:\'\(\)]+:[^:\'\(\)]+:[^:\(\)]+)\)'; + $sql.=" AND (".preg_replace_callback('/'.$regexstring.'/', 'DolibarrApi::_forge_criteria_callback', $sqlfilters).")"; + } - $sql.= $db->order($sortfield, $sortorder); - if ($limit) { - if ($page < 0) - { - $page = 0; - } - $offset = $limit * $page; + $sql.= $db->order($sortfield, $sortorder); + if ($limit) { + if ($page < 0) + { + $page = 0; + } + $offset = $limit * $page; - $sql.= $db->plimit($limit + 1, $offset); - } + $sql.= $db->plimit($limit + 1, $offset); + } - $result = $db->query($sql); - if ($result) { - $i = 0; - $num = $db->num_rows($result); - $min = min($num, ($limit <= 0 ? $num : $limit)); - while ($i < $min) - { - $obj = $db->fetch_object($result); - $invoice_static = new FactureFournisseur($db); - if($invoice_static->fetch($obj->rowid)) { - $obj_ret[] = $this->_cleanObjectDatas($invoice_static); - } - $i++; - } - } - else { - throw new RestException(503, 'Error when retrieve supplier invoice list : '.$db->lasterror()); - } - if ( ! count($obj_ret)) { - throw new RestException(404, 'No supplier invoice found'); - } - return $obj_ret; - } + $result = $db->query($sql); + if ($result) { + $i = 0; + $num = $db->num_rows($result); + $min = min($num, ($limit <= 0 ? $num : $limit)); + while ($i < $min) + { + $obj = $db->fetch_object($result); + $invoice_static = new FactureFournisseur($db); + if($invoice_static->fetch($obj->rowid)) { + $obj_ret[] = $this->_cleanObjectDatas($invoice_static); + } + $i++; + } + } + else { + throw new RestException(503, 'Error when retrieve supplier invoice list : '.$db->lasterror()); + } + if ( ! count($obj_ret)) { + throw new RestException(404, 'No supplier invoice found'); + } + return $obj_ret; + } - /** - * Create supplier invoice object - * - * @param array $request_data Request datas - * @return int ID of supplier invoice - */ - public function post($request_data = null) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { - throw new RestException(401, "Insuffisant rights"); - } - // Check mandatory fields - $result = $this->_validate($request_data); + /** + * Create supplier invoice object + * + * @param array $request_data Request datas + * + * @return int ID of supplier invoice + * + * @throws 401 + * @throws 500 + */ + public function post($request_data = null) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { + throw new RestException(401, "Insuffisant rights"); + } + // Check mandatory fields + $result = $this->_validate($request_data); - foreach($request_data as $field => $value) { - $this->invoice->$field = $value; - } - if(! array_keys($request_data, 'date')) { - $this->invoice->date = dol_now(); - } - /* We keep lines as an array - if (isset($request_data["lines"])) { - $lines = array(); - foreach ($request_data["lines"] as $line) { - array_push($lines, (object) $line); - } - $this->invoice->lines = $lines; - }*/ + foreach($request_data as $field => $value) { + $this->invoice->$field = $value; + } + if(! array_keys($request_data, 'date')) { + $this->invoice->date = dol_now(); + } - if ($this->invoice->create(DolibarrApiAccess::$user) < 0) { - throw new RestException(500, "Error creating order", array_merge(array($this->invoice->error), $this->invoice->errors)); - } - return $this->invoice->id; - } + if ($this->invoice->create(DolibarrApiAccess::$user) < 0) { + throw new RestException(500, "Error creating order", array_merge(array($this->invoice->error), $this->invoice->errors)); + } + return $this->invoice->id; + } - /** - * Update supplier invoice - * - * @param int $id Id of supplier invoice to update - * @param array $request_data Datas - * @return int - */ - public function put($id, $request_data = null) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { - throw new RestException(401); - } + /** + * Update supplier invoice + * + * @param int $id Id of supplier invoice to update + * @param array $request_data Datas + * + * @return int + * + * @throws 401 + * @throws 404 + */ + public function put($id, $request_data = null) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { + throw new RestException(401); + } - $result = $this->invoice->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Supplier invoice not found'); - } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Supplier invoice not found'); + } - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } - foreach($request_data as $field => $value) { - if ($field == 'id') continue; - $this->invoice->$field = $value; - } + foreach($request_data as $field => $value) { + if ($field == 'id') continue; + $this->invoice->$field = $value; + } - if($this->invoice->update($id, DolibarrApiAccess::$user)) - return $this->get($id); + if($this->invoice->update($id, DolibarrApiAccess::$user)) + return $this->get($id); - return false; - } + return false; + } - /** - * Delete supplier invoice - * - * @param int $id Supplier invoice ID - * @return type - */ - public function delete($id) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->supprimer) { - throw new RestException(401); - } - $result = $this->invoice->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Supplier invoice not found'); - } + /** + * Delete supplier invoice + * + * @param int $id Supplier invoice ID + * + * @return array + * + * @throws 401 + * @throws 404 + * @throws 500 + */ + public function delete($id) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->supprimer) { + throw new RestException(401); + } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Supplier invoice not found'); + } - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } - if( $this->invoice->delete(DolibarrApiAccess::$user) < 0) - { - throw new RestException(500); - } + if( $this->invoice->delete(DolibarrApiAccess::$user) < 0) + { + throw new RestException(500); + } - return array( - 'success' => array( - 'code' => 200, - 'message' => 'Supplier invoice deleted' - ) - ); - } + return array( + 'success' => array( + 'code' => 200, + 'message' => 'Supplier invoice deleted' + ) + ); + } + + /** + * Validate an order + * + * @param int $id Order ID + * @param int $idwarehouse Warehouse ID + * @param int $notrigger 1=Does not execute triggers, 0= execute triggers + * + * @url POST {id}/validate + * + * @return array + * + * @throws 304 + * @throws 401 + * @throws 404 + * @throws 405 + * @throws 500 + */ + public function validate($id, $idwarehouse = 0, $notrigger = 0) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { + throw new RestException(401); + } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Invoice not found'); + } + + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } + + $result = $this->invoice->validate(DolibarrApiAccess::$user, '', $idwarehouse, $notrigger); + if ($result == 0) { + throw new RestException(304, 'Error nothing done. May be object is already validated'); + } + if ($result < 0) { + throw new RestException(500, 'Error when validating Invoice: '.$this->invoice->error); + } + + return array( + 'success' => array( + 'code' => 200, + 'message' => 'Invoice validated (Ref='.$this->invoice->ref.')' + ) + ); + } + + /** + * Get list of payments of a given supplier invoice + * + * @param int $id Id of SupplierInvoice + * + * @url GET {id}/payments + * + * @return array + * @throws 400 + * @throws 401 + * @throws 404 + * @throws 405 + */ + public function getPayments($id) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->lire) { + throw new RestException(401); + } + if(empty($id)) { + throw new RestException(400, 'Invoice ID is mandatory'); + } + + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } + + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Invoice not found'); + } + + $result = $this->invoice->getListOfPayments(); + if( $result < 0) { + throw new RestException(405, $this->invoice->error); + } + + return $result; + } - /** - * Validate an order - * - * @param int $id Order ID - * @param int $idwarehouse Warehouse ID - * @param int $notrigger 1=Does not execute triggers, 0= execute triggers - * - * @url POST {id}/validate - * - * @return array - * FIXME An error 403 is returned if the request has an empty body. - * Error message: "Forbidden: Content type `text/plain` is not supported." - * Workaround: send this in the body - * { - * "idwarehouse": 0, - * "notrigger": 0 - * } - */ - public function validate($id, $idwarehouse = 0, $notrigger = 0) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { - throw new RestException(401); - } - $result = $this->invoice->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Invoice not found'); - } + /** + * Add payment line to a specific supplier invoice with the remain to pay as amount. + * + * @param int $id Id of invoice + * @param string $datepaye {@from body} Payment date {@type timestamp} + * @param int $paiementid {@from body} Payment mode Id {@min 1} + * @param string $closepaidinvoices {@from body} Close paid invoices {@choice yes,no} + * @param int $accountid {@from body} Account Id {@min 1} + * @param string $num_paiement {@from body} Payment number (optional) + * @param string $comment {@from body} Note (optional) + * @param string $chqemetteur {@from body} Payment issuer (mandatory if paiementcode = 'CHQ') + * @param string $chqbank {@from body} Issuer bank name (optional) + * + * @url POST {id}/payments + * + * @return int Payment ID + * @throws 400 + * @throws 401 + * @throws 404 + */ + public function addPayment($id, $datepaye, $paiementid, $closepaidinvoices, $accountid, $num_paiement = '', $comment = '', $chqemetteur = '', $chqbank = '') + { + global $conf; - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { + throw new RestException(403); + } + if(empty($id)) { + throw new RestException(400, 'Invoice ID is mandatory'); + } - $result = $this->invoice->validate(DolibarrApiAccess::$user, '', $idwarehouse, $notrigger); - if ($result == 0) { - throw new RestException(304, 'Error nothing done. May be object is already validated'); - } - if ($result < 0) { - throw new RestException(500, 'Error when validating Invoice: '.$this->invoice->error); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } - return array( - 'success' => array( - 'code' => 200, - 'message' => 'Invoice validated (Ref='.$this->invoice->ref.')' - ) - ); - } + if (! empty($conf->banque->enabled)) { + if(empty($accountid)) { + throw new RestException(400, 'Account ID is mandatory'); + } + } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore - /** - * Clean sensible object datas - * - * @param Object $object Object to clean - * @return array Array of cleaned object properties - */ - protected function _cleanObjectDatas($object) - { - // phpcs:enable - $object = parent::_cleanObjectDatas($object); + if(empty($paiementid)) { + throw new RestException(400, 'Paiement ID or Paiement Code is mandatory'); + } - unset($object->rowid); - unset($object->barcode_type); - unset($object->barcode_type_code); - unset($object->barcode_type_label); - unset($object->barcode_type_coder); - return $object; - } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Invoice not found'); + } - /** - * Validate fields before create or update object - * - * @param array $data Datas to validate - * @return array - * - * @throws RestException - */ - private function _validate($data) - { - $invoice = array(); - foreach (SupplierInvoices::$FIELDS as $field) { - if (!isset($data[$field])) - throw new RestException(400, "$field field missing"); - $invoice[$field] = $data[$field]; - } - return $invoice; - } + // Calculate amount to pay + $totalpaye = $this->invoice->getSommePaiement(); + $totaldeposits = $this->invoice->getSumDepositsUsed(); + $resteapayer = price2num($this->invoice->total_ttc - $totalpaye - $totaldeposits, 'MT'); + + $this->db->begin(); + + $amounts = array(); + $multicurrency_amounts = array(); + + $resteapayer = price2num($resteapayer, 'MT'); + $amounts[$id] = $resteapayer; + + // Multicurrency + $newvalue = price2num($this->invoice->multicurrency_total_ttc, 'MT'); + $multicurrency_amounts[$id] = $newvalue; + + // Creation of payment line + $paiement = new PaiementFourn($this->db); + $paiement->datepaye = $datepaye; + $paiement->amounts = $amounts; // Array with all payments dispatching with invoice id + $paiement->multicurrency_amounts = $multicurrency_amounts; // Array with all payments dispatching + $paiement->paiementid = $paiementid; + $paiement->paiementcode = dol_getIdFromCode($this->db, $paiementid, 'c_paiement', 'id', 'code', 1); + $paiement->num_payment = $num_paiement; + $paiement->note_public = $comment; + + $paiement_id = $paiement->create(DolibarrApiAccess::$user, ($closepaidinvoices=='yes'?1:0)); // This include closing invoices + if ($paiement_id < 0) + { + $this->db->rollback(); + throw new RestException(400, 'Payment error : '.$paiement->error); + } + + if (! empty($conf->banque->enabled)) { + $result=$paiement->addPaymentToBank(DolibarrApiAccess::$user, 'payment_supplier', '(SupplierInvoicePayment)', $accountid, $chqemetteur, $chqbank); + if ($result < 0) + { + $this->db->rollback(); + throw new RestException(400, 'Add payment to bank error : '.$paiement->error); + } + } + + $this->db->commit(); + + return $paiement_id; + } + + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore + /** + * Clean sensible object datas + * + * @param Object $object Object to clean + * @return array Array of cleaned object properties + */ + protected function _cleanObjectDatas($object) + { + // phpcs:enable + $object = parent::_cleanObjectDatas($object); + + unset($object->rowid); + unset($object->barcode_type); + unset($object->barcode_type_code); + unset($object->barcode_type_label); + unset($object->barcode_type_coder); + + return $object; + } + + /** + * Validate fields before create or update object + * + * @param array $data Datas to validate + * @return array + * + * @throws RestException + */ + private function _validate($data) + { + $invoice = array(); + foreach (SupplierInvoices::$FIELDS as $field) { + if (!isset($data[$field])) + throw new RestException(400, "$field field missing"); + $invoice[$field] = $data[$field]; + } + return $invoice; + } } From 003642fe10bea2e870bd45cef6cd3e08a7385562 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= Date: Wed, 14 Aug 2019 23:07:18 +0200 Subject: [PATCH 154/228] Preserve spaces instead of tabs for indentation. --- .../class/api_supplier_invoices.class.php | 854 +++++++++--------- 1 file changed, 427 insertions(+), 427 deletions(-) diff --git a/htdocs/fourn/class/api_supplier_invoices.class.php b/htdocs/fourn/class/api_supplier_invoices.class.php index 56eeb2c17b5..a4cdadc8265 100644 --- a/htdocs/fourn/class/api_supplier_invoices.class.php +++ b/htdocs/fourn/class/api_supplier_invoices.class.php @@ -30,492 +30,492 @@ require_once DOL_DOCUMENT_ROOT . '/fourn/class/paiementfourn.class.php'; */ class SupplierInvoices extends DolibarrApi { - /** - * - * @var array $FIELDS Mandatory fields, checked when create and update object - */ - static $FIELDS = array( - 'socid', - ); + /** + * + * @var array $FIELDS Mandatory fields, checked when create and update object + */ + static $FIELDS = array( + 'socid', + ); - /** - * @var FactureFournisseur $invoice {@type FactureFournisseur} - */ - public $invoice; + /** + * @var FactureFournisseur $invoice {@type FactureFournisseur} + */ + public $invoice; - /** - * Constructor - */ - public function __construct() - { - global $db; - $this->db = $db; - $this->invoice = new FactureFournisseur($this->db); - } + /** + * Constructor + */ + public function __construct() + { + global $db; + $this->db = $db; + $this->invoice = new FactureFournisseur($this->db); + } - /** - * Get properties of a supplier invoice object - * - * Return an array with supplier invoice information - * - * @param int $id ID of supplier invoice - * @return array|mixed data without useless information - * - * @throws RestException - */ - public function get($id) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->lire) { - throw new RestException(401); - } + /** + * Get properties of a supplier invoice object + * + * Return an array with supplier invoice information + * + * @param int $id ID of supplier invoice + * @return array|mixed data without useless information + * + * @throws RestException + */ + public function get($id) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->lire) { + throw new RestException(401); + } - $result = $this->invoice->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Supplier invoice not found'); - } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Supplier invoice not found'); + } - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } - $this->invoice->fetchObjectLinked(); - return $this->_cleanObjectDatas($this->invoice); - } + $this->invoice->fetchObjectLinked(); + return $this->_cleanObjectDatas($this->invoice); + } - /** - * List invoices - * - * Get a list of supplier invoices - * - * @param string $sortfield Sort field - * @param string $sortorder Sort order - * @param int $limit Limit for list - * @param int $page Page number - * @param string $thirdparty_ids Thirdparty ids to filter invoices of. {@example '1' or '1,2,3'} {@pattern /^[0-9,]*$/i} - * @param string $status Filter by invoice status : draft | unpaid | paid | cancelled - * @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.ref:like:'SO-%') and (t.datec:<:'20160101')" - * @return array Array of invoice objects - * - * @throws RestException - */ - public function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids = '', $status = '', $sqlfilters = '') - { - global $db; + /** + * List invoices + * + * Get a list of supplier invoices + * + * @param string $sortfield Sort field + * @param string $sortorder Sort order + * @param int $limit Limit for list + * @param int $page Page number + * @param string $thirdparty_ids Thirdparty ids to filter invoices of. {@example '1' or '1,2,3'} {@pattern /^[0-9,]*$/i} + * @param string $status Filter by invoice status : draft | unpaid | paid | cancelled + * @param string $sqlfilters Other criteria to filter answers separated by a comma. Syntax example "(t.ref:like:'SO-%') and (t.datec:<:'20160101')" + * @return array Array of invoice objects + * + * @throws RestException + */ + public function index($sortfield = "t.rowid", $sortorder = 'ASC', $limit = 100, $page = 0, $thirdparty_ids = '', $status = '', $sqlfilters = '') + { + global $db; - $obj_ret = array(); + $obj_ret = array(); - // case of external user, $thirdparty_ids param is ignored and replaced by user's socid - $socids = DolibarrApiAccess::$user->socid ? DolibarrApiAccess::$user->socid : $thirdparty_ids; + // case of external user, $thirdparty_ids param is ignored and replaced by user's socid + $socids = DolibarrApiAccess::$user->socid ? DolibarrApiAccess::$user->socid : $thirdparty_ids; - // If the internal user must only see his customers, force searching by him - $search_sale = 0; - if (! DolibarrApiAccess::$user->rights->societe->client->voir) $search_sale = DolibarrApiAccess::$user->id; + // If the internal user must only see his customers, force searching by him + $search_sale = 0; + if (! DolibarrApiAccess::$user->rights->societe->client->voir) $search_sale = DolibarrApiAccess::$user->id; - $sql = "SELECT t.rowid"; - // We need these fields in order to filter by sale (including the case where the user can only see his prospects) - if (!DolibarrApiAccess::$user->rights->societe->client->voir || $search_sale > 0) $sql .= ", sc.fk_soc, sc.fk_user"; - $sql.= " FROM ".MAIN_DB_PREFIX."facture_fourn as t"; + $sql = "SELECT t.rowid"; + // We need these fields in order to filter by sale (including the case where the user can only see his prospects) + if (!DolibarrApiAccess::$user->rights->societe->client->voir || $search_sale > 0) $sql .= ", sc.fk_soc, sc.fk_user"; + $sql.= " FROM ".MAIN_DB_PREFIX."facture_fourn as t"; - // We need this table joined to the select in order to filter by sale - if (!DolibarrApiAccess::$user->rights->societe->client->voir || $search_sale > 0) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + // We need this table joined to the select in order to filter by sale + if (!DolibarrApiAccess::$user->rights->societe->client->voir || $search_sale > 0) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; - $sql.= ' WHERE t.entity IN ('.getEntity('supplier_invoice').')'; - if (!DolibarrApiAccess::$user->rights->societe->client->voir || $search_sale > 0) $sql.= " AND t.fk_soc = sc.fk_soc"; - if ($socids) $sql.= " AND t.fk_soc IN (".$socids.")"; - if ($search_sale > 0) $sql.= " AND t.rowid = sc.fk_soc"; // Join for the needed table to filter by sale + $sql.= ' WHERE t.entity IN ('.getEntity('supplier_invoice').')'; + if (!DolibarrApiAccess::$user->rights->societe->client->voir || $search_sale > 0) $sql.= " AND t.fk_soc = sc.fk_soc"; + if ($socids) $sql.= " AND t.fk_soc IN (".$socids.")"; + if ($search_sale > 0) $sql.= " AND t.rowid = sc.fk_soc"; // Join for the needed table to filter by sale - // Filter by status - if ($status == 'draft') { - $sql.= " AND t.fk_statut IN (0)"; - } - if ($status == 'unpaid') { - $sql.= " AND t.fk_statut IN (1)"; - } - if ($status == 'paid') { - $sql.= " AND t.fk_statut IN (2)"; - } - if ($status == 'cancelled') { - $sql.= " AND t.fk_statut IN (3)"; - } - // Insert sale filter - if ($search_sale > 0) { - $sql .= " AND sc.fk_user = ".$search_sale; - } - // Add sql filters - if ($sqlfilters) - { - if (! DolibarrApi::_checkFilters($sqlfilters)) - { - throw new RestException(503, 'Error when validating parameter sqlfilters '.$sqlfilters); - } - $regexstring='\(([^:\'\(\)]+:[^:\'\(\)]+:[^:\(\)]+)\)'; - $sql.=" AND (".preg_replace_callback('/'.$regexstring.'/', 'DolibarrApi::_forge_criteria_callback', $sqlfilters).")"; - } + // Filter by status + if ($status == 'draft') { + $sql.= " AND t.fk_statut IN (0)"; + } + if ($status == 'unpaid') { + $sql.= " AND t.fk_statut IN (1)"; + } + if ($status == 'paid') { + $sql.= " AND t.fk_statut IN (2)"; + } + if ($status == 'cancelled') { + $sql.= " AND t.fk_statut IN (3)"; + } + // Insert sale filter + if ($search_sale > 0) { + $sql .= " AND sc.fk_user = ".$search_sale; + } + // Add sql filters + if ($sqlfilters) + { + if (! DolibarrApi::_checkFilters($sqlfilters)) + { + throw new RestException(503, 'Error when validating parameter sqlfilters '.$sqlfilters); + } + $regexstring='\(([^:\'\(\)]+:[^:\'\(\)]+:[^:\(\)]+)\)'; + $sql.=" AND (".preg_replace_callback('/'.$regexstring.'/', 'DolibarrApi::_forge_criteria_callback', $sqlfilters).")"; + } - $sql.= $db->order($sortfield, $sortorder); - if ($limit) { - if ($page < 0) - { - $page = 0; - } - $offset = $limit * $page; + $sql.= $db->order($sortfield, $sortorder); + if ($limit) { + if ($page < 0) + { + $page = 0; + } + $offset = $limit * $page; - $sql.= $db->plimit($limit + 1, $offset); - } + $sql.= $db->plimit($limit + 1, $offset); + } - $result = $db->query($sql); - if ($result) { - $i = 0; - $num = $db->num_rows($result); - $min = min($num, ($limit <= 0 ? $num : $limit)); - while ($i < $min) - { - $obj = $db->fetch_object($result); - $invoice_static = new FactureFournisseur($db); - if($invoice_static->fetch($obj->rowid)) { - $obj_ret[] = $this->_cleanObjectDatas($invoice_static); - } - $i++; - } - } - else { - throw new RestException(503, 'Error when retrieve supplier invoice list : '.$db->lasterror()); - } - if ( ! count($obj_ret)) { - throw new RestException(404, 'No supplier invoice found'); - } - return $obj_ret; - } + $result = $db->query($sql); + if ($result) { + $i = 0; + $num = $db->num_rows($result); + $min = min($num, ($limit <= 0 ? $num : $limit)); + while ($i < $min) + { + $obj = $db->fetch_object($result); + $invoice_static = new FactureFournisseur($db); + if($invoice_static->fetch($obj->rowid)) { + $obj_ret[] = $this->_cleanObjectDatas($invoice_static); + } + $i++; + } + } + else { + throw new RestException(503, 'Error when retrieve supplier invoice list : '.$db->lasterror()); + } + if ( ! count($obj_ret)) { + throw new RestException(404, 'No supplier invoice found'); + } + return $obj_ret; + } - /** - * Create supplier invoice object - * - * @param array $request_data Request datas - * - * @return int ID of supplier invoice - * - * @throws 401 - * @throws 500 - */ - public function post($request_data = null) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { - throw new RestException(401, "Insuffisant rights"); - } - // Check mandatory fields - $result = $this->_validate($request_data); + /** + * Create supplier invoice object + * + * @param array $request_data Request datas + * + * @return int ID of supplier invoice + * + * @throws 401 + * @throws 500 + */ + public function post($request_data = null) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { + throw new RestException(401, "Insuffisant rights"); + } + // Check mandatory fields + $result = $this->_validate($request_data); - foreach($request_data as $field => $value) { - $this->invoice->$field = $value; - } - if(! array_keys($request_data, 'date')) { - $this->invoice->date = dol_now(); - } + foreach($request_data as $field => $value) { + $this->invoice->$field = $value; + } + if(! array_keys($request_data, 'date')) { + $this->invoice->date = dol_now(); + } - if ($this->invoice->create(DolibarrApiAccess::$user) < 0) { - throw new RestException(500, "Error creating order", array_merge(array($this->invoice->error), $this->invoice->errors)); - } - return $this->invoice->id; - } + if ($this->invoice->create(DolibarrApiAccess::$user) < 0) { + throw new RestException(500, "Error creating order", array_merge(array($this->invoice->error), $this->invoice->errors)); + } + return $this->invoice->id; + } - /** - * Update supplier invoice - * - * @param int $id Id of supplier invoice to update - * @param array $request_data Datas - * - * @return int - * - * @throws 401 - * @throws 404 - */ - public function put($id, $request_data = null) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { - throw new RestException(401); - } + /** + * Update supplier invoice + * + * @param int $id Id of supplier invoice to update + * @param array $request_data Datas + * + * @return int + * + * @throws 401 + * @throws 404 + */ + public function put($id, $request_data = null) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { + throw new RestException(401); + } - $result = $this->invoice->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Supplier invoice not found'); - } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Supplier invoice not found'); + } - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } - foreach($request_data as $field => $value) { - if ($field == 'id') continue; - $this->invoice->$field = $value; - } + foreach($request_data as $field => $value) { + if ($field == 'id') continue; + $this->invoice->$field = $value; + } - if($this->invoice->update($id, DolibarrApiAccess::$user)) - return $this->get($id); + if($this->invoice->update($id, DolibarrApiAccess::$user)) + return $this->get($id); - return false; - } + return false; + } - /** - * Delete supplier invoice - * - * @param int $id Supplier invoice ID - * - * @return array - * - * @throws 401 - * @throws 404 - * @throws 500 - */ - public function delete($id) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->supprimer) { - throw new RestException(401); - } - $result = $this->invoice->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Supplier invoice not found'); - } + /** + * Delete supplier invoice + * + * @param int $id Supplier invoice ID + * + * @return array + * + * @throws 401 + * @throws 404 + * @throws 500 + */ + public function delete($id) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->supprimer) { + throw new RestException(401); + } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Supplier invoice not found'); + } - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } - if( $this->invoice->delete(DolibarrApiAccess::$user) < 0) - { - throw new RestException(500); - } + if( $this->invoice->delete(DolibarrApiAccess::$user) < 0) + { + throw new RestException(500); + } - return array( - 'success' => array( - 'code' => 200, - 'message' => 'Supplier invoice deleted' - ) - ); - } + return array( + 'success' => array( + 'code' => 200, + 'message' => 'Supplier invoice deleted' + ) + ); + } - /** - * Validate an order - * - * @param int $id Order ID - * @param int $idwarehouse Warehouse ID - * @param int $notrigger 1=Does not execute triggers, 0= execute triggers - * - * @url POST {id}/validate - * - * @return array - * - * @throws 304 - * @throws 401 - * @throws 404 - * @throws 405 - * @throws 500 - */ - public function validate($id, $idwarehouse = 0, $notrigger = 0) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { - throw new RestException(401); - } - $result = $this->invoice->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Invoice not found'); - } + /** + * Validate an order + * + * @param int $id Order ID + * @param int $idwarehouse Warehouse ID + * @param int $notrigger 1=Does not execute triggers, 0= execute triggers + * + * @url POST {id}/validate + * + * @return array + * + * @throws 304 + * @throws 401 + * @throws 404 + * @throws 405 + * @throws 500 + */ + public function validate($id, $idwarehouse = 0, $notrigger = 0) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { + throw new RestException(401); + } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Invoice not found'); + } - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } - $result = $this->invoice->validate(DolibarrApiAccess::$user, '', $idwarehouse, $notrigger); - if ($result == 0) { - throw new RestException(304, 'Error nothing done. May be object is already validated'); - } - if ($result < 0) { - throw new RestException(500, 'Error when validating Invoice: '.$this->invoice->error); - } + $result = $this->invoice->validate(DolibarrApiAccess::$user, '', $idwarehouse, $notrigger); + if ($result == 0) { + throw new RestException(304, 'Error nothing done. May be object is already validated'); + } + if ($result < 0) { + throw new RestException(500, 'Error when validating Invoice: '.$this->invoice->error); + } - return array( - 'success' => array( - 'code' => 200, - 'message' => 'Invoice validated (Ref='.$this->invoice->ref.')' - ) - ); - } + return array( + 'success' => array( + 'code' => 200, + 'message' => 'Invoice validated (Ref='.$this->invoice->ref.')' + ) + ); + } - /** - * Get list of payments of a given supplier invoice - * - * @param int $id Id of SupplierInvoice - * - * @url GET {id}/payments - * - * @return array - * @throws 400 - * @throws 401 - * @throws 404 - * @throws 405 - */ - public function getPayments($id) - { - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->lire) { - throw new RestException(401); - } - if(empty($id)) { - throw new RestException(400, 'Invoice ID is mandatory'); - } + /** + * Get list of payments of a given supplier invoice + * + * @param int $id Id of SupplierInvoice + * + * @url GET {id}/payments + * + * @return array + * @throws 400 + * @throws 401 + * @throws 404 + * @throws 405 + */ + public function getPayments($id) + { + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->lire) { + throw new RestException(401); + } + if(empty($id)) { + throw new RestException(400, 'Invoice ID is mandatory'); + } - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } - $result = $this->invoice->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Invoice not found'); - } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Invoice not found'); + } - $result = $this->invoice->getListOfPayments(); - if( $result < 0) { - throw new RestException(405, $this->invoice->error); - } + $result = $this->invoice->getListOfPayments(); + if( $result < 0) { + throw new RestException(405, $this->invoice->error); + } - return $result; - } + return $result; + } - /** - * Add payment line to a specific supplier invoice with the remain to pay as amount. - * - * @param int $id Id of invoice - * @param string $datepaye {@from body} Payment date {@type timestamp} - * @param int $paiementid {@from body} Payment mode Id {@min 1} - * @param string $closepaidinvoices {@from body} Close paid invoices {@choice yes,no} - * @param int $accountid {@from body} Account Id {@min 1} - * @param string $num_paiement {@from body} Payment number (optional) - * @param string $comment {@from body} Note (optional) - * @param string $chqemetteur {@from body} Payment issuer (mandatory if paiementcode = 'CHQ') - * @param string $chqbank {@from body} Issuer bank name (optional) - * - * @url POST {id}/payments - * - * @return int Payment ID - * @throws 400 - * @throws 401 - * @throws 404 - */ - public function addPayment($id, $datepaye, $paiementid, $closepaidinvoices, $accountid, $num_paiement = '', $comment = '', $chqemetteur = '', $chqbank = '') - { - global $conf; + /** + * Add payment line to a specific supplier invoice with the remain to pay as amount. + * + * @param int $id Id of invoice + * @param string $datepaye {@from body} Payment date {@type timestamp} + * @param int $paiementid {@from body} Payment mode Id {@min 1} + * @param string $closepaidinvoices {@from body} Close paid invoices {@choice yes,no} + * @param int $accountid {@from body} Account Id {@min 1} + * @param string $num_paiement {@from body} Payment number (optional) + * @param string $comment {@from body} Note (optional) + * @param string $chqemetteur {@from body} Payment issuer (mandatory if paiementcode = 'CHQ') + * @param string $chqbank {@from body} Issuer bank name (optional) + * + * @url POST {id}/payments + * + * @return int Payment ID + * @throws 400 + * @throws 401 + * @throws 404 + */ + public function addPayment($id, $datepaye, $paiementid, $closepaidinvoices, $accountid, $num_paiement = '', $comment = '', $chqemetteur = '', $chqbank = '') + { + global $conf; - if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { - throw new RestException(403); - } - if(empty($id)) { - throw new RestException(400, 'Invoice ID is mandatory'); - } + if(! DolibarrApiAccess::$user->rights->fournisseur->facture->creer) { + throw new RestException(403); + } + if(empty($id)) { + throw new RestException(400, 'Invoice ID is mandatory'); + } - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } - if (! empty($conf->banque->enabled)) { - if(empty($accountid)) { - throw new RestException(400, 'Account ID is mandatory'); - } - } + if (! empty($conf->banque->enabled)) { + if(empty($accountid)) { + throw new RestException(400, 'Account ID is mandatory'); + } + } - if(empty($paiementid)) { - throw new RestException(400, 'Paiement ID or Paiement Code is mandatory'); - } + if(empty($paiementid)) { + throw new RestException(400, 'Paiement ID or Paiement Code is mandatory'); + } - $result = $this->invoice->fetch($id); - if( ! $result ) { - throw new RestException(404, 'Invoice not found'); - } + $result = $this->invoice->fetch($id); + if( ! $result ) { + throw new RestException(404, 'Invoice not found'); + } - // Calculate amount to pay - $totalpaye = $this->invoice->getSommePaiement(); - $totaldeposits = $this->invoice->getSumDepositsUsed(); - $resteapayer = price2num($this->invoice->total_ttc - $totalpaye - $totaldeposits, 'MT'); + // Calculate amount to pay + $totalpaye = $this->invoice->getSommePaiement(); + $totaldeposits = $this->invoice->getSumDepositsUsed(); + $resteapayer = price2num($this->invoice->total_ttc - $totalpaye - $totaldeposits, 'MT'); - $this->db->begin(); + $this->db->begin(); - $amounts = array(); - $multicurrency_amounts = array(); + $amounts = array(); + $multicurrency_amounts = array(); - $resteapayer = price2num($resteapayer, 'MT'); - $amounts[$id] = $resteapayer; + $resteapayer = price2num($resteapayer, 'MT'); + $amounts[$id] = $resteapayer; - // Multicurrency - $newvalue = price2num($this->invoice->multicurrency_total_ttc, 'MT'); - $multicurrency_amounts[$id] = $newvalue; + // Multicurrency + $newvalue = price2num($this->invoice->multicurrency_total_ttc, 'MT'); + $multicurrency_amounts[$id] = $newvalue; - // Creation of payment line - $paiement = new PaiementFourn($this->db); - $paiement->datepaye = $datepaye; - $paiement->amounts = $amounts; // Array with all payments dispatching with invoice id - $paiement->multicurrency_amounts = $multicurrency_amounts; // Array with all payments dispatching - $paiement->paiementid = $paiementid; - $paiement->paiementcode = dol_getIdFromCode($this->db, $paiementid, 'c_paiement', 'id', 'code', 1); - $paiement->num_payment = $num_paiement; - $paiement->note_public = $comment; + // Creation of payment line + $paiement = new PaiementFourn($this->db); + $paiement->datepaye = $datepaye; + $paiement->amounts = $amounts; // Array with all payments dispatching with invoice id + $paiement->multicurrency_amounts = $multicurrency_amounts; // Array with all payments dispatching + $paiement->paiementid = $paiementid; + $paiement->paiementcode = dol_getIdFromCode($this->db, $paiementid, 'c_paiement', 'id', 'code', 1); + $paiement->num_payment = $num_paiement; + $paiement->note_public = $comment; - $paiement_id = $paiement->create(DolibarrApiAccess::$user, ($closepaidinvoices=='yes'?1:0)); // This include closing invoices - if ($paiement_id < 0) - { - $this->db->rollback(); - throw new RestException(400, 'Payment error : '.$paiement->error); - } + $paiement_id = $paiement->create(DolibarrApiAccess::$user, ($closepaidinvoices=='yes'?1:0)); // This include closing invoices + if ($paiement_id < 0) + { + $this->db->rollback(); + throw new RestException(400, 'Payment error : '.$paiement->error); + } - if (! empty($conf->banque->enabled)) { - $result=$paiement->addPaymentToBank(DolibarrApiAccess::$user, 'payment_supplier', '(SupplierInvoicePayment)', $accountid, $chqemetteur, $chqbank); - if ($result < 0) - { - $this->db->rollback(); - throw new RestException(400, 'Add payment to bank error : '.$paiement->error); - } - } + if (! empty($conf->banque->enabled)) { + $result=$paiement->addPaymentToBank(DolibarrApiAccess::$user, 'payment_supplier', '(SupplierInvoicePayment)', $accountid, $chqemetteur, $chqbank); + if ($result < 0) + { + $this->db->rollback(); + throw new RestException(400, 'Add payment to bank error : '.$paiement->error); + } + } - $this->db->commit(); + $this->db->commit(); - return $paiement_id; - } + return $paiement_id; + } - // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore - /** - * Clean sensible object datas - * - * @param Object $object Object to clean - * @return array Array of cleaned object properties - */ - protected function _cleanObjectDatas($object) - { - // phpcs:enable - $object = parent::_cleanObjectDatas($object); + // phpcs:disable PEAR.NamingConventions.ValidFunctionName.PublicUnderscore + /** + * Clean sensible object datas + * + * @param Object $object Object to clean + * @return array Array of cleaned object properties + */ + protected function _cleanObjectDatas($object) + { + // phpcs:enable + $object = parent::_cleanObjectDatas($object); - unset($object->rowid); - unset($object->barcode_type); - unset($object->barcode_type_code); - unset($object->barcode_type_label); - unset($object->barcode_type_coder); + unset($object->rowid); + unset($object->barcode_type); + unset($object->barcode_type_code); + unset($object->barcode_type_label); + unset($object->barcode_type_coder); - return $object; - } + return $object; + } - /** - * Validate fields before create or update object - * - * @param array $data Datas to validate - * @return array - * - * @throws RestException - */ - private function _validate($data) - { - $invoice = array(); - foreach (SupplierInvoices::$FIELDS as $field) { - if (!isset($data[$field])) - throw new RestException(400, "$field field missing"); - $invoice[$field] = $data[$field]; - } - return $invoice; - } + /** + * Validate fields before create or update object + * + * @param array $data Datas to validate + * @return array + * + * @throws RestException + */ + private function _validate($data) + { + $invoice = array(); + foreach (SupplierInvoices::$FIELDS as $field) { + if (!isset($data[$field])) + throw new RestException(400, "$field field missing"); + $invoice[$field] = $data[$field]; + } + return $invoice; + } } From f7537998104a96b12b06ace9c6a47687c538c387 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 14 Aug 2019 23:27:34 +0200 Subject: [PATCH 155/228] FIX Support #tag into url of website module --- htdocs/core/lib/website.lib.php | 14 +++++++++----- ...rate.jpg => website_template-corporate.jpg} | Bin .../websites/website_template-stellar.png | Bin 0 -> 280585 bytes htdocs/website/index.php | 2 +- 4 files changed, 10 insertions(+), 6 deletions(-) rename htdocs/install/doctemplates/websites/{website-template-corporate.jpg => website_template-corporate.jpg} (100%) create mode 100644 htdocs/install/doctemplates/websites/website_template-stellar.png diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 4696e2adc8f..388c047499b 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -30,14 +30,16 @@ * @param string $content Content to replace * @param int $removephppart 0=Replace PHP sections with a PHP badge. 1=Remove completely PHP sections. * @param string $contenttype Content type + * @param int $containerid Contenair id * @return boolean True if OK * @see dolWebsiteOutput() for function used to replace content in a web server context */ -function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype='html') +function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype='html', $containerid='') { $nbrep = 0; - dol_syslog('dolWebsiteReplacementOfLinks start (contenttype='.$contenttype." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')', LOG_DEBUG); + dol_syslog('dolWebsiteReplacementOfLinks start (contenttype='.$contenttype." containerid=".$containerid." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'')." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'').')', LOG_DEBUG); + //if ($contenttype == 'html') { print $content;exit; } // Replace php code. Note $content may come from database and does not contains body tags. $replacewith='...php...'; @@ -72,8 +74,9 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c // Replace relative link / with dolibarr URL $content = preg_replace('/(href=")\/\"/', '\1'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageid='.$website->fk_default_home.'"', $content, -1, $nbrep); - // Replace relative link /xxx.php with dolibarr URL - $content = preg_replace('/(href=")\/?([^:\"]*)(\.php\")/', '\1'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageref=\2"', $content, -1, $nbrep); + // Replace relative link /xxx.php#aaa or /xxx.php with dolibarr URL (we discard param ?...) + // TODO To support replacement of /xxx.php?bbb=ccc we must be able to replace only if link is not already DOL_URL_ROOT.'/website/index.php + $content = preg_replace('/(href=")\/?([^:\"]*)\.php(\?[^\"<>#]*)?(#[^\"<>]*)?\"/', '\1'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageref=\2\4"', $content, -1, $nbrep); // Fix relative link into medias with correct URL after the DOL_URL_ROOT: ../url("medias/ $content = preg_replace('/url\((["\']?)medias\//', 'url(\1'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); @@ -97,6 +100,7 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c $content=preg_replace('/(url\(")(\/?viewimage\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); dol_syslog('dolWebsiteReplacementOfLinks end', LOG_DEBUG); + //if ($contenttype == 'html') { print $content;exit; } return $content; } @@ -196,7 +200,7 @@ function dolWebsiteOutput($content, $contenttype='html', $containerid='') global $db, $langs, $conf, $user; global $dolibarr_main_url_root, $dolibarr_main_data_root; - dol_syslog("dolWebsiteOutput start (contenttype=".$contenttype." containerid=".$containerid." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'')." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'').')'); + dol_syslog("dolWebsiteOutput start (contenttype=".$contenttype." containerid=".$containerid." USEDOLIBARREDITOR=".(defined('USEDOLIBARREDITOR')?'1':'')." USEDOLIBARRSERVER=".(defined('USEDOLIBARRSERVER')?'1':'').')'); // Define $urlwithroot $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root)); diff --git a/htdocs/install/doctemplates/websites/website-template-corporate.jpg b/htdocs/install/doctemplates/websites/website_template-corporate.jpg similarity index 100% rename from htdocs/install/doctemplates/websites/website-template-corporate.jpg rename to htdocs/install/doctemplates/websites/website_template-corporate.jpg diff --git a/htdocs/install/doctemplates/websites/website_template-stellar.png b/htdocs/install/doctemplates/websites/website_template-stellar.png new file mode 100644 index 0000000000000000000000000000000000000000..718fc808b456e9004389ddd875f618e4409b81c4 GIT binary patch literal 280585 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�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±UQ+p((qovo(zby45@!--#qg{g)rM{5N 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 FngCid)."\n"; //$out.=$newcontent; $out.='
'; From c739b9566609afdf1cd71a64cdf6730dad8e43e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= Date: Wed, 14 Aug 2019 23:33:06 +0200 Subject: [PATCH 156/228] Fix codestyle lessc.class.php should be excluded from ruleset as it is an external lib --- dev/setup/codesniffer/ruleset.xml | 1 + htdocs/core/lib/files.lib.php | 2 +- htdocs/fourn/class/api_supplier_invoices.class.php | 6 +++--- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/dev/setup/codesniffer/ruleset.xml b/dev/setup/codesniffer/ruleset.xml index daf73e5b2a7..89ea98a051b 100644 --- a/dev/setup/codesniffer/ruleset.xml +++ b/dev/setup/codesniffer/ruleset.xml @@ -6,6 +6,7 @@ build/html build/aps documents + htdocs/core/class/lessc.class.php htdocs/custom htdocs/includes htdocs/install/doctemplates/websites diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 79b0badf0ff..a5bbd68a736 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -1911,7 +1911,7 @@ function dol_compress_file($inputfile, $outputfile, $mode = "gz") dol_syslog("Class ZipArchive is set so we zip using ZipArchive to zip into ".$outputfile.' rootPath='.$rootPath); $zip = new ZipArchive; - if ($zip->open($outputfile, ZipArchive::CREATE)!==TRUE) { + if ($zip->open($outputfile, ZipArchive::CREATE)!==true) { $errormsg="Failed to open file ".$outputfile."\n"; dol_syslog("dol_compress_file failure - ".$errormsg, LOG_ERR); return -6; diff --git a/htdocs/fourn/class/api_supplier_invoices.class.php b/htdocs/fourn/class/api_supplier_invoices.class.php index a4cdadc8265..a2da7a77494 100644 --- a/htdocs/fourn/class/api_supplier_invoices.class.php +++ b/htdocs/fourn/class/api_supplier_invoices.class.php @@ -362,9 +362,9 @@ class SupplierInvoices extends DolibarrApi throw new RestException(400, 'Invoice ID is mandatory'); } - if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { - throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); - } + if( ! DolibarrApi::_checkAccessToResource('fournisseur', $this->invoice->id, 'facture_fourn', 'facture')) { + throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login); + } $result = $this->invoice->fetch($id); if( ! $result ) { From 2b805cc63df86c9d9824e5d2ab49f4648a1d1dbe Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 14 Aug 2019 23:47:01 +0200 Subject: [PATCH 157/228] Add tooltip help in CSS edition --- htdocs/langs/en_US/website.lang | 3 ++- htdocs/website/index.php | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang index f01494fcdac..a05ead24df7 100644 --- a/htdocs/langs/en_US/website.lang +++ b/htdocs/langs/en_US/website.lang @@ -106,4 +106,5 @@ DeleteAlsoJs=Delete also all javascript files specific to this website? DeleteAlsoMedias=Delete also all medias files specific to this website? MyWebsitePages=My website pages SearchReplaceInto=Search | Replace into -ReplaceString=New string \ No newline at end of file +ReplaceString=New string +CSSContentTooltipHelp=Enter here CSS content. To avoid any conflict with the CSS of the application, be sure to prepend all declaration with the .bodywebsite class. For example:

#mycssselector, input.myclass:hover { ... }
must be
.bodywebsite #mycssselector, .bodywebsite input.myclass:hover { ... }

Note: If you have a large file without this prefix, you can use 'lessc' to convert it to append the .bodywebsite prefix everywhere. \ No newline at end of file diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 04642d0dc84..3624843dba7 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -2557,7 +2557,8 @@ if ($action == 'editcss') // CSS file print ''; - print $langs->trans('WEBSITE_CSS_INLINE'); + $htmlhelp=$langs->trans("CSSContentTooltipHelp"); + print $form->textwithpicto($langs->trans('WEBSITE_CSS_INLINE'), $htmlhelp, 1, 'help', '', 0, 2, 'csstooltip'); print ''; $doleditor=new DolEditor('WEBSITE_CSS_INLINE', $csscontent, '', '220', 'ace', 'In', true, false, 'ace', 0, '100%', ''); From b2f1cb22e8459a2085efc2fd737dfda6bcba9693 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 14 Aug 2019 23:57:44 +0200 Subject: [PATCH 158/228] Add tooltip in website module --- htdocs/langs/en_US/website.lang | 3 ++- htdocs/website/index.php | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang index a05ead24df7..ec8bc0c2232 100644 --- a/htdocs/langs/en_US/website.lang +++ b/htdocs/langs/en_US/website.lang @@ -107,4 +107,5 @@ DeleteAlsoMedias=Delete also all medias files specific to this website? MyWebsitePages=My website pages SearchReplaceInto=Search | Replace into ReplaceString=New string -CSSContentTooltipHelp=Enter here CSS content. To avoid any conflict with the CSS of the application, be sure to prepend all declaration with the .bodywebsite class. For example:

#mycssselector, input.myclass:hover { ... }
must be
.bodywebsite #mycssselector, .bodywebsite input.myclass:hover { ... }

Note: If you have a large file without this prefix, you can use 'lessc' to convert it to append the .bodywebsite prefix everywhere. \ No newline at end of file +CSSContentTooltipHelp=Enter here CSS content. To avoid any conflict with the CSS of the application, be sure to prepend all declaration with the .bodywebsite class. For example:

#mycssselector, input.myclass:hover { ... }
must be
.bodywebsite #mycssselector, .bodywebsite input.myclass:hover { ... }

Note: If you have a large file without this prefix, you can use 'lessc' to convert it to append the .bodywebsite prefix everywhere. +LinkAndScriptsHereAreNotLoadedInEditor=Warning: This content is output only when site is accessed from a server. It is not used in Edit mode so if you need to load javascript files also in edit mode, just add your tag 'script src=...' into the page. \ No newline at end of file diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 3624843dba7..8797020a717 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -2578,9 +2578,12 @@ if ($action == 'editcss') // Common HTML header print ''; + print $langs->trans('WEBSITE_HTML_HEADER'); $htmlhelp=$langs->trans("Example").' :
'; $htmlhelp.=dol_htmlentitiesbr($htmlheadercontentdefault); - print $form->textwithpicto($langs->trans('WEBSITE_HTML_HEADER'), $htmlhelp, 1, 'help', '', 0, 2, 'htmlheadertooltip'); + $textwithhelp = $form->textwithpicto('', $htmlhelp, 1, 'help', '', 0, 2, 'htmlheadertooltip'); + $htmlhelp2=$langs->trans("LinkAndScriptsHereAreNotLoadedInEditor").'
'; + print $form->textwithpicto($textwithhelp, $htmlhelp2, 1, 'warning', '', 0, 2, 'htmlheadertooltip2'); print ''; $doleditor=new DolEditor('WEBSITE_HTML_HEADER', $htmlheadercontent, '', '220', 'ace', 'In', true, false, 'ace', 0, '100%', ''); From dfe2c3de74ec1bea1b1ab03af7095e804b3a5c80 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 00:31:37 +0200 Subject: [PATCH 159/228] Add template stellar --- .../websites/website_template-stellar.zip | Bin 0 -> 197145 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 htdocs/install/doctemplates/websites/website_template-stellar.zip diff --git a/htdocs/install/doctemplates/websites/website_template-stellar.zip b/htdocs/install/doctemplates/websites/website_template-stellar.zip new file mode 100644 index 0000000000000000000000000000000000000000..b7fdfc1bd375876648ed59f349e8642918064161 GIT binary patch literal 197145 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 literal 0 HcmV?d00001 From f81463af0cfefcd7f19adf5fdcf8e86e63af72b0 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 00:55:47 +0200 Subject: [PATCH 160/228] Update templates --- htdocs/core/lib/website2.lib.php | 20 ++++++ .../websites/website_template-corporate.zip | Bin 2297082 -> 2297147 bytes .../websites/website_template-stellar.zip | Bin 197145 -> 197333 bytes htdocs/langs/en_US/website.lang | 2 + htdocs/website/index.php | 59 ++++++++++++++++++ 5 files changed, 81 insertions(+) diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php index f45df83700a..e622b79bd2c 100644 --- a/htdocs/core/lib/website2.lib.php +++ b/htdocs/core/lib/website2.lib.php @@ -322,6 +322,26 @@ function dolSaveManifestJson($file, $content) return $result; } +/** + * Save content of a page on disk + * + * @param string $file Full path of filename to generate + * @param string $content Content of file + * @return boolean True if OK + */ +function dolSaveReadme($file, $content) +{ + global $conf, $pathofwebsite; + + dol_syslog("Save README.md file into ".$file); + + dol_mkdir($pathofwebsite); + $result = file_put_contents($file, $content); + if (! empty($conf->global->MAIN_UMASK)) + @chmod($file, octdec($conf->global->MAIN_UMASK)); + + return $result; +} /** diff --git a/htdocs/install/doctemplates/websites/website_template-corporate.zip b/htdocs/install/doctemplates/websites/website_template-corporate.zip index 6ee933a0c7bff29d44b2352e7e3d9ed557da39d5..620f2d379c4b371c74801f5dad724329fda7296b 100644 GIT binary patch delta 115553 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Ʒ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

wj{I>B&yFlWj>eP|Jlh#ehpRyH`w=;n5!lL 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 delta 116679 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%0AuYMOLC@z46H>eANXP|~8JT&kZ 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 diff --git a/htdocs/install/doctemplates/websites/website_template-stellar.zip b/htdocs/install/doctemplates/websites/website_template-stellar.zip index b7fdfc1bd375876648ed59f349e8642918064161..0ef1302528fed7b6d4d62ea515a7b408a859d2be 100644 GIT binary patch delta 940 zcmZXSYer0sBaG@W9$O|eN(zobBYHd>svgtPMJeysl7tZ-T&;S3N_j%8G&&><6(K?yT ztQRAqCGYn*d?1P?8C zPLv4cJ_?LQP;B7=E3qNOdK*&7aM@rHDM&hx{!lPehbb8;<1H|Of^<7hg{-z4$cP~2 z^KCe(hTU->k%U(cltojp?J3d(aw?wT3kl{Do7 z@DamDS+(U%=}Ak)>6(;0ZDy81n_N|1qtguK4(F>>{V4;vI>W)7M~9}R-+rWOG-lPH zURPi}SJ>N^YaHBa9L<*+4F$a_wOZ9V@^)C&Hz*{H4Cpnl>(%ce`F*ldezFSFJLhZ{ z9?+gxYd6N|^BQ{4vWWuaM>I;wdH6Ntu&Zt~QNG@TX)0Le#of@3Iwp}GMUM9;b`UrE zu$y?)hb-cK9}L9rK7Nv%2WG>0%OXE4a{F9ZuU+KO9L!X|!H-?UB0n;TxBSQ_PWy3~ zs0$#6crAcJqB{`ovo{#lF9wl8`pY2Fi1R^Y6SL>TyfP2EKx||_T(4ZfKFW`AF8}Wj zvBwKguKe?7%z6Pa61uH)rmU5lD0i`*1*qs96Fe8?Jz(wKh_SB~>AKj}qEeW#XNy!} zxANqYy-7@vQmaodqFiip0dZNeZv1-{swymJldUJLOZzEIGl|uW#k_kdAF+J=eS&VV zRyX2Uk`QXk(gjf|UiN^cc(6vk^hK@Mg%XC3#-O?vNdO)AlN*i&+%j7)5)C?=1+ze?Q^%g>YHg^h23Wk(fE)$_4e&`C>o4JrWlS_-+)m|tE6PD5za3sH)YFN=I4a+| zVKPVE>BAZduli7(KqK=J@(e~ikMWa&djM?|%n=g-D{}8CDk%5^=w(}#GK3Kd7)Gm$ zM#ooNvoVtX+lr|8Ae!lS2Jwdp*GF;JYMM2U{CGxAhOm+B4q*%VF@zmt+9dXn-bwv3 znuAf_J{8dqNBJPi$tX+1a5Mi_7`f!TFp5a$H1?6Fr*V*cIgL_s(F_ido|(vV24*b1 zV-|&!x6LAtJU5G-~P9t;?>dJ>%KnukkNz@Fcr&{}GoEVV5D6 z$BJoO7@F6huKv8&qnw6xa=1)GrW%XYE<>)O>(?&2eyJOVOsC(^@MZPZkQpmErgwAk z?Pt2@n7-#fB}pxTT+5mQ$W$3O3e`1=w5)}5{_T}TB3_6W$wH)Xyx6)w2DNn@E7UNg QEipsrOMjm)|DZGe1Kdvz1^@s6 diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang index ec8bc0c2232..7ecb94e3fec 100644 --- a/htdocs/langs/en_US/website.lang +++ b/htdocs/langs/en_US/website.lang @@ -15,6 +15,8 @@ WEBSITE_HTML_HEADER=Addition at bottom of HTML Header (common to all pages) WEBSITE_ROBOT=Robot file (robots.txt) WEBSITE_HTACCESS=Website .htaccess file WEBSITE_MANIFEST_JSON=Website manifest.json file +WEBSITE_README=README.md file +EnterHereLicenseInformation=Enter here meta data or license information to fille a README.md file. if you distribute your website as a template, the file will be included into the temptate package. HtmlHeaderPage=HTML header (specific to this page only) PageNameAliasHelp=Name or alias of the page.
This alias is also used to forge a SEO URL when website is ran from a Virtual host of a Web server (like Apacke, Nginx, ...). Use the button "%s" to edit this alias. EditTheWebSiteForACommonHeader=Note: If you want to define a personalized header for all pages, edit the header on the site level instead of on the page/container. diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 8797020a717..d16e8661390 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -184,6 +184,7 @@ $filetpl=$pathofwebsite.'/page'.$pageid.'.tpl.php'; $fileindex=$pathofwebsite.'/index.php'; $filewrapper=$pathofwebsite.'/wrapper.php'; $filemanifestjson=$pathofwebsite.'/manifest.json.php'; +$filereadme=$pathofwebsite.'/README.md'; // Define $urlwithroot $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root)); @@ -855,6 +856,11 @@ if ($action == 'addcontainer') $result=dolSaveManifestJson($filemanifestjson, $manifestjsoncontent); } + if (! dol_is_file($filereadme)) + { + $readmecontent = "Website generated by Dolibarr ERP CRM"; + $result=dolSaveReadme($filereadme, $readmecontent); + } $action = 'preview'; } @@ -1153,6 +1159,33 @@ if ($action == 'updatecss') } + // README.md file + $readmecontent =''; + + /*$readmecontent.= "\n";*/ + + $readmecontent.= trim(GETPOST('WEBSITE_README', 'none'))."\n"; + + /*$readmecontent.= '"."\n";*/ + + $result = dolSaveReadme($filereadme, $readmecontent); + if (! $result) + { + $error++; + setEventMessages('Failed to write file '.$filereadme, null, 'errors'); + } + + // Message if no error if (! $error) { @@ -2529,6 +2562,21 @@ if ($action == 'editcss') //$manifestjsoncontent.=""; } + if (GETPOST('editcss', 'alpha') || GETPOST('refreshpage', 'alpha')) + { + $readmecontent = @file_get_contents($filereadme); + // Clean the readme file to remove php code and get only html part + $readmecontent = preg_replace('/<\?php \/\/ BEGIN PHP[^\?]*END PHP \?>\n*/ims', '', $readmecontent); + } + else + { + $readmecontent = GETPOST('WEBSITE_README'); + } + if (! trim($readmecontent)) + { + //$readmecontent.=""; + } + dol_fiche_head(); print ''."\n"; @@ -2623,6 +2671,17 @@ if ($action == 'editcss') print ''; + // README.md + print ''; + $htmlhelp=$langs->trans("EnterHereLicenseInformation"); + print $form->textwithpicto($langs->trans('WEBSITE_README'), $htmlhelp, 1, 'help', '', 0, 2, 'readmetooltip'); + print ''; + + $doleditor=new DolEditor('WEBSITE_README', $readmecontent, '', '220', 'ace', 'In', true, false, 'ace', 0, '100%', ''); + print $doleditor->Create(1, '', true, $langs->trans("File").' README.md', 'text'); + + print ''; + print ''; dol_fiche_end(); From bb35d9be0ca7e8aec537075740a618d2e25f0bfe Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 01:50:01 +0200 Subject: [PATCH 161/228] Fix copy of templates during activation of module --- htdocs/core/modules/modWebsite.class.php | 22 +++++++++++++++++- .../websites/website_template-stellar.jpg | Bin 0 -> 106795 bytes .../websites/website_template-stellar.png | Bin 280585 -> 0 bytes 3 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 htdocs/install/doctemplates/websites/website_template-stellar.jpg delete mode 100644 htdocs/install/doctemplates/websites/website_template-stellar.png diff --git a/htdocs/core/modules/modWebsite.class.php b/htdocs/core/modules/modWebsite.class.php index 24a929c82a0..cf4623fdb3b 100644 --- a/htdocs/core/modules/modWebsite.class.php +++ b/htdocs/core/modules/modWebsite.class.php @@ -158,7 +158,7 @@ class modWebsite extends DolibarrModules // Remove permissions and default values $this->remove($options); - // Copy flags and octicons directoru + // Copy flags and octicons directory $dirarray=array('common/flags', 'common/octicons'); foreach($dirarray as $dir) { @@ -179,6 +179,26 @@ class modWebsite extends DolibarrModules } } + // Website templates + $srcroot=DOL_DOCUMENT_ROOT.'/install/doctemplates/websites'; + $destroot=DOL_DATA_ROOT.'/doctemplates/websites'; + + dol_mkdir($destroot); + + $docs=dol_dir_list($srcroot, 'files', 0, 'website_.*(\.zip|\.jpg)$'); + foreach($docs as $cursorfile) + { + $src=$srcroot.'/'.$cursorfile['name']; + $dest=$destroot.'/'.$cursorfile['name']; + + $result=dol_copy($src, $dest, 0, 0); + if ($result < 0) + { + $langs->load("errors"); + $this->error=$langs->trans('ErrorFailToCopyFile', $src, $dest); + } + } + $sql = array(); return $this->_init($sql, $options); diff --git a/htdocs/install/doctemplates/websites/website_template-stellar.jpg b/htdocs/install/doctemplates/websites/website_template-stellar.jpg new file mode 100644 index 0000000000000000000000000000000000000000..66867384b58e4b7ba3cfde11f8141db4a48772bc GIT binary patch literal 106795 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
&y4#-_tV#D?5cko&VQ+}AF)bU96+GmB!y7A@ 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�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±UQ+p((qovo(zby45@!--#qg{g)rM{5N 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 FngC Date: Thu, 15 Aug 2019 01:58:22 +0200 Subject: [PATCH 162/228] Add shadow style --- htdocs/core/lib/website2.lib.php | 4 ++-- htdocs/theme/eldy/global.inc.php | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php index e622b79bd2c..48d192843d8 100644 --- a/htdocs/core/lib/website2.lib.php +++ b/htdocs/core/lib/website2.lib.php @@ -345,7 +345,7 @@ function dolSaveReadme($file, $content) /** - * Show list of themes. Show all thumbs of themes + * Show list of themes. Show all thumbs of themes/skins * * @param Website $website Object website to load the tempalte into * @return void @@ -421,7 +421,7 @@ function showWebsiteTemplates(Website $website) $url=DOL_URL_ROOT.'/viewimage.php?modulepart=doctemplateswebsite&file='.$subdirwithoutzip.".jpg"; if (! file_exists($file)) $url=DOL_URL_ROOT.'/public/theme/common/nophoto.png'; - print ''.$title.''; + print ''.$title.''; print '
'; print $subdir.' ('.dol_print_size(dol_filesize($dirtheme."/".$subdir), 1, 1).')'; print '
ref.'&templateuserfile='.$subdir.'" class="button">'.$langs->trans("Load").''; diff --git a/htdocs/theme/eldy/global.inc.php b/htdocs/theme/eldy/global.inc.php index d0a0c5958ef..b05968356ce 100644 --- a/htdocs/theme/eldy/global.inc.php +++ b/htdocs/theme/eldy/global.inc.php @@ -3020,11 +3020,15 @@ table.noborder.paymenttable { height: 22px; } -/* Disable shadows */ +/* Disable-Enable shadows */ .noshadow { -webkit-box-shadow: 0px 0px 0px #DDD !important; box-shadow: 0px 0px 0px #DDD !important; } +.shadow { + -webkit-box-shadow: 2px 2px 5px #CCC !important; + box-shadow: 2px 2px 5px #CCC !important; +} div.tabBar .noborder { -webkit-box-shadow: 0px 0px 0px #DDD !important; From c92488986bd356a3394a3580783df813e9b25519 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 02:32:07 +0200 Subject: [PATCH 163/228] NEW Can have a preview of website template when loading a template --- htdocs/core/js/lib_head.js.php | 3 ++- htdocs/core/lib/website2.lib.php | 16 +++++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/htdocs/core/js/lib_head.js.php b/htdocs/core/js/lib_head.js.php index cf8557de961..d177e7d99c1 100644 --- a/htdocs/core/js/lib_head.js.php +++ b/htdocs/core/js/lib_head.js.php @@ -856,7 +856,8 @@ function newpopup(url, title) { } /** - * Function show document preview. Use the "dialog" function. + * Function show document preview. It uses the "dialog" function. + * The a tag around the img must have the src='', class='documentpreview', mime='image/xxx', target='_blank' from getAdvancedPreviewUrl(). * * @param string file Url * @param string type Mime file type ("image/jpeg", "application/pdf", "text/html") diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php index 48d192843d8..cf6082f3bd8 100644 --- a/htdocs/core/lib/website2.lib.php +++ b/htdocs/core/lib/website2.lib.php @@ -417,11 +417,25 @@ function showWebsiteTemplates(Website $website) print '

'; - $file=$dirtheme."/".$subdirwithoutzip.".jpg"; + $file = $dirtheme."/".$subdirwithoutzip.".jpg"; $url=DOL_URL_ROOT.'/viewimage.php?modulepart=doctemplateswebsite&file='.$subdirwithoutzip.".jpg"; if (! file_exists($file)) $url=DOL_URL_ROOT.'/public/theme/common/nophoto.png'; + + $originalfile = basename($file); + $entity = $conf->entity; + $modulepart = 'doctemplateswebsite'; + $cache = ''; + $title = $file; + + $ret=''; + $urladvanced=getAdvancedPreviewUrl($modulepart, $originalfile, 1, '&entity='.$entity); + if (! empty($urladvanced)) $ret.=''; + else $ret.=''; + print $ret; print ''.$title.''; + print ''; + print '
'; print $subdir.' ('.dol_print_size(dol_filesize($dirtheme."/".$subdir), 1, 1).')'; print '
ref.'&templateuserfile='.$subdir.'" class="button">'.$langs->trans("Load").''; From 14030affe59a5ed349dd3ed793c0eaaf1d2aed5a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 02:57:00 +0200 Subject: [PATCH 164/228] Update website templates --- .../websites/website_template-corporate.zip | Bin 2297147 -> 1721234 bytes .../websites/website_template-stellar.zip | Bin 197333 -> 197324 bytes htdocs/website/class/website.class.php | 4 ++++ 3 files changed, 4 insertions(+) diff --git a/htdocs/install/doctemplates/websites/website_template-corporate.zip b/htdocs/install/doctemplates/websites/website_template-corporate.zip index 620f2d379c4b371c74801f5dad724329fda7296b..e86e11df2885d4590449673680bfd555722e92d4 100644 GIT binary patch delta 361812 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®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

BC%l`B85n3peI>j&L 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

m7(!n1WtR=hKR5
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
nCSo9Eh0RPs*B4anAn-$p@r~

delta 942246
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

f3jZaf1l%}`7-#9lMS1(ck6tsiqK+YKEjwO zm;dCdJ-5ebg*$6{n1<+7C6sO&;>VoW?n�c`qx4E8kEak?PbqxjVfVG7-EPvqli7 zCt*P7ysQU19s$9m1U6K@xIn%YmkXvI+|@bJTnv4UHm%0RtmV!MvhFp;<9lUXdr$9=VrQ31At(S-t z1I$luIb3qu+Y0P=V%PLht#2F{w+j0I8Sc`T`Zcm|4~QN6%WWXk3e>Q=)iV}{6UFL>w~8vOd#i^r1}7UHP-jmV`=5k zW-pT`JkXYRfpyjxIg0o`XG+CS7wmiM5p|d?lQs%L3 zw~X}yBVtd4j-b;M^Ws=``;&eN6@-UZfes8XN8)G3^_SalA3l0Qxw8fpp7) zczaS5_iz(uZ_z57)^4%22T{ity&S)cQ$0TBG@}c91@Px<1+AZ6#;7 zk6O{>s!gOX0cLqZCr4phvYXXRN`KT!mP5o?#7{~I%x$w=*JU33S|gsH&gn6B>&uIC z9M+#^rxD)pcV|Js^#DhvAs6*UKrCZE0-7?U8r8*?dJadMZ;GM+6bu>k|#~)*gL~lOD zerCBJ!XJX;7xcVp`ze^Vc~T?CuXXcpHBDiq8z6|Dc*WN?LHSejO^qIZb@^$Hv&A%m z$^h?L^#f8wu~d(6PJhMPC(+Y#Q{i$(+5Mm^A%PZ^T+UVpFe$B048RA*=n+c}c(XNT z_PYEXf$mB{oDu>n(M6l7b|rU!M(={DBwYPMqym-7&l{-D&)Qky?M@#%<3`byu*G%F z$C10av){8j29aU3h%9A)92JS=uy0WGW&{OAPLwsf>xE{aYN!zUE7OAJ5TCC(1(X2a zMH3{eF-{kE(gr5>jHM1#rjAh!O1Wpn7I0*JYH3&SR>cMdTF==O?S3{N4SB`m3DH@{ zQ+ah!W4`TwQA)eKZ^F5y$80O$u+bNTGtKfq{CB-5@q z`*RbJL1od?A5LB73IVr%nI4#7FrFp$Q=A==_G97aD1gm zSmFa6kn~bf`e`mR!gfdPcNU{GhXnCi`@LLsFnU+nv4sv5DmLT3$L&7i%nt5XbQ}gc zN*t2=!0ZWs#)!j>wOlBA9(wWLWY+(YCL|X9gnyDYc4^yzfkmB2_SUmKt`X%+$@p1Z zw1*;u=rmkU3SL2wl96Hyr`GVgBSw}(=6MZ-aNnJ)=rsFe{VX!i$E;IkPtW|O=7XQDd>AK-z>%Y_?IY-)hnEaCfabj2!BrUKoA$U$kolj_+3x1Gn--fD zm|kmt0$!(o2Y-&xxd>w7l=Ng@WmP22s!AfTA2EIetv$w{XxfgeeIFs#5bl5tw0#u~ z^JkV2m6K^xhAyG<2bmz5P{L6m9|fbRUlB9!ZpB@({%UF$ z7dusG^5`YL1(s+M@xhVQY z!N(6u!hg;iB1u1{b-?~QQ8W^+*++<+^z45 zZB#6|5`0&C1E#*fG;k`-fYr-(vB-3PZ4qw>upH#cz#NBU?^+2I175;D8-*Aor1++G&++->MM= z$*0)Sr>NUzx63|T*xgPVM4G)_?xrI4v{1NEL;@P)Ko&2X85ZrVtj<#RAu~jOU(1I9 z{}b%he7i$yIiTc?5p(tTJ3<~C9>@7_t!`y2ZUae}V2Ym{jBc5`#zXdtaGBEnQwm5T z58H9m`5MOAZaGXju{vlymw8WDB03&l58@8im=}`FRC_P{z!de!wOr-e3JMJh7@i)^ zg95SIv+yrj^zV7B{2&a!QNmS!Pb@XLr=S}`j_Ywu@7s3t^B@QG>c2~+(K^X5X}tdZ_ppHB+o0NeZ=^xr zHHJY(wr+ib3KcC7{E1UA^U{x#m&T=x`UV&@>qJKEq=z_9{c~DhU98`K&J0VxZVSnV zalaCfYse-%3%`!1j>P0XhgFH9D!|tQV>YTP>VHo?PCMV!DKyq-9^hbOR>^VzMnW!M z8R3Wh8hV_R!+V=qh*vc_gi%HL-VMzsB4#$x&j7xdHw<=m;u2Bc*kw24zU={sk_984 z^lWt|e2&u4+;CHzWD<<<&#cTGj6Wyz{KIFTh6x+)Sn1)|8r5`C0kZo+56_|fPV zee^ib39M`>nCHNt;#0nroWgYFNI-q{eebLl9)g{W-E_?0kwF5zRtyU`LR7++rV

e@M2kDPbn%%H}I* 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%0D~Il$Pv zTOA;3#t{@_UR{vs<|9?6)}&~(NM!Q@^z%nl070!k_guphwWwyR#=a(?f3NoEqPeiT z`JkSG-#f~VoGIoXdxoIkVP&!Vif&!;f$WpKw$H}8EY0r$U>p5YLLRD~bd@tb7K)Ub zsgzlU(p<_V<&VNrW}OifBhSf#;HV#FF5s0_<2m5t9#2%Vy2=m`nnSS)KtSV2sTa6 zTQql6K=>Rr!-MALveQxAVhA^w{> z*wZgRW7D(X?GN@CJd|<#U$mIIZ|Mb3?}jkS+QghaD`Re!O%2!#f1YVLnf9_E_PoD_ zGhU@v-Y3%1y}_%5iAw5-MW?Na1*MD$2ZCdW6p=tRP+bCS6&C8CUqsj>o*%yw5W$6p z1Ir!5QhSe1(4@K3Qo;y+&Z!92bqhee_Tx{6v$JX3 zW3A|B$#`EAJ=Ko{e^)-7Mo3x!VXFSso#1^^?EFE-k))8J^9!n4sLz#5`_jDs zeA)N8MSEN)*%##dosX>q7Mi@x`ux`pXvenH@HP?271bV6bO294u)ju8C+k~US-Q_}&!!^fF90blHdoyLKz^6( ze6*~k8Y3Sz^&dgq35Oha@}{}=z-h=4IK{Yn5wxSxdiE3rbK=@QKG^YzSAE>qF>ODE+0I}6b}%XV&$i9>S!qDCrvg5R=i-|W^E7gN3_)ej4Tm4?(%58E4icueVKIK z$~S+(=(m2dOxeXEy4KhKnste0b{#6zS7#kIrgP8ySHLXwEPrX9^1+3LpRP2`{{TpJ zDd^MDI__DKW2=j2aGmRu2x0lrs^57e5>k0#m2^AimQl|RFjLGNkstn~b9jVc%Wtnv zpCTI$=CtW~0pVx3BO&6cEJ%Rg-LCo?W7W|q&Gqmz`@1JT2+o$jX}6dlW-SAe(xL-? zWH(nQ&ff*u41a&r2^8TYU9!-$rsO33CZsoxWZ?>XG{^<7OieGUIBUH-OyJWVljRlj zKuvlQ>6JJg4u2BmBHw*4rwblLHyGSLFFb7;8GlTs#4P&X)oRbp)w`j&rWd5+jsty^OH;SHCrtC< z9Ed}`n!K24;%yL|SWg1DX9*n&LVp|B0WEyNM5&pWf)D=yMepQUd);jdWz?**wLk-U z8+*QVZ-3Bf)rjqu<+-ZTF+lCMQU)Aed&JSo%B1+pU%!rC!cmWX&>_5{x;x=A0A(p1hQ#Dn3jgFuO0<`!J=_h8`T*#l-X;64NGovOt< zwPA18(hu|o-aP|qjf_p)FJZS7U%i{!`qn~f)UK?2BTDfmr%yK8$M+${RbSqd;(zm4 zC+M5f=ih*^X!aiqTj}>D-C@^mo>r+nV3e3y$=AI5TW0gLk_Z+(mi${gted?_+SpH_ zTplsGk50Bn=+-9Hy*V?GgH|v1>9*T_t5OrL1(H%9icW0vd^cRI7s=C^gwv8KcR*jy z7p9BXSRBL_8l31gJG^#BApB`(*?(4Zx(Nn_Z$p(+?%%BBU$`;*3tEr1I@b7Qq~6oz z=zNPURrfd}^wA2tS<5igDCxN1a-1~Zj}o>Ry_EbX8W<+=bEvw;OIrSWKQy5az8B4! zBn&MCJwzyIiCA4H3fjf!64$ zLr)z~!~s0)vP$mr#(4p6FEx6lXIb#zZ>Bak&!BgYA^9qNLOCJB@l&BMu-cu>t~-;7 z*6m5-4#$*)j$AqK+(u63RA~@?SE$`rSOq`M)eI7P3IJ$%3H)6Hi=ZddhKrVv_u;BrEup4(LLdj!PVd|E{NoJRP5 zwhmY4gKP%EAn`+4u-6{nWU-Ca$ksHo$I0_Y7t7f)x1T^=K6qT8ZGWKhJ~?5K4*@L> zAM(l@=rYIRRFdj1-zGFjeUrXT>pXR;j^8wmX>R<=J(R$8?B#&8bQZZOK#{!r_k!i7 zuOtxXtY%Cy%NW709Gf1?c79{I_vY~=Zqb6Z^&FB!ewT&^&bQFCf8%@lG`p88a>olW zy`Llh7Zbg5pYBhIjDIz~%gJ9!{?btscJ;&tZ2OMO$#!)M|OHq*|_3&=&rL z=eS3aTQ0mZ7u{wg%$wsx<@6)vf#I@FJf(lce|D z4eO|(r6tJuoMLcr>5l`QkWirq6M5R^5VgO`E!~9-Hz%QC-Lp?FJRvZt{ zJzqhBJmUdLFMq0e*_AiH-L9xs8emAapy!+BgeD}Rj01Hr^J&Ijz-zaE$fm#enA#fi z?As{(K}nStCW(^@WPDsjfloQR$4`~>UuixokR0sIi|T#-;q8ZyH9<}E4g4b!TMGR@ z=mw`xvwQPfU|nXQcEWj574h8sW*%%?d?ULyspMxpzke~Jqz%>-1}TNsF5rU2c93As zW@Eois;H#Udn1vynnj7;$30j3`|PpoO`X`YY(S+TZ@TVC5ug=N{Qky2z#6am8#zwO zAB%@-0kU{>3)gK_uG0PM%WS4^n2s2{F`+3qMIYWw52Hl(mVq`Xuk?F`I9RQP*~?!% z-`@0bbs-*l9@ER@JnQKIPj#y9Xwkl{cg%`ex_|5a51_Os>BhjTqxMsf`>PLKMe+2| z51#hj)|C%4ke74H&*H=D(YW3)QvcLV<7>`D$)jw^zrSuvmNR9eADzN&G-K*x*#x|v z!4S4V{{RhU5z`pxy=Mu~$HS;v+kXIbHG9)K3s2afSnHhxcJ|qz%|OH2CW8;T%(@zy zF@Gwbljr`Uo=u=x_Z=&D-!UOOqIY6dz3iDteLKz=I&zYc>n6P}yA>(hr-Kbj-tiqf zfUJ|om%;49yIZYXjp!BJv?pOaQ{97K*m-csb=Y8>r{H?Mg(Mv=3Xct2R`qj%OV<~pM9tcpQr3xO>ZjK;I@Ge4&9j*h zWl(_wDivN$#@wv-2c&nKX1u>p^e~Y4l38UJiW_8Tm!e;N+|5P6#QVHjvUpW6i^GpNE3oV51lB+^VH9J(Rif@rOlDZOmjVxkHl6WP4kK|)+DEf|F9tK zi=6ynK$Lt^SUn5#uBKW0+;3>cV{7h$Z6(ZKiWKb<{d>U08d0noo^M(lnaH@-tbW6@ z&jELVna~_|C2>f<)KGzm+FwsHzW3ql2XVGr>$_oI;}a+P()xnEcI6kbet#BQBky%@ zVzB*-RZRE-;snVQE0v`(zm)pm!+XI;eDo{no7h|F+2>~TI?PBV^=vMBOroKf#Z>uc zz0dC;84x%FWv=fido85_XRX1etPn~V=5!DG)^IXENYfj4Q~})nq?F|v4rK0l4eUdV zVmC-^n0tZEdOdpHUKBP7_J6`p0rb`w^^>eU|A%3Ukz$U_C$;7z3T%BQD0XTEvn=B% zw;cXTT(|^aFHx-|myz z(*nBOT=X^ckH~ts_ZjdwJuren)N13tvAQ5&YwS=};J2xs^5dH%bAK~_M^UzOD?4#E zqA2rqqD?dHio#_mE!t-g59Cj*;X)|b&%1U{NNZgc9Uk4$m|c8%>41ZQEKVY?GajOo z@J$OJsAG$pSz4p|`c<+Ul%8Kj6^M+MDYKr69WI>X10JfX+6^->%Kigs9XEDTmH%Jw zdox$MC<1l$fiu+uu^zHKXv6@dM#i1HJ+xcU19f<%7@j$Gn`O) zh$(iN&?L!wL9 zgi4Ql)yz^}DSzYZ0!p28)<8C}UT$cAdu}~kqx)+#j8A$B%B*qf&xIv4L@?XVymdBl zHn(5j_iHG*^ncb>lkMau*1E$Sv$4j;IYJ)?@TI8GqW-H;EU=Nwm zYQ>6j6|Ip7VYLx+kH?aOFTUy(7CWezQ2+$i6!V$B)qgH~YvCnU7<_V;IVKm-?=*F0 zUOH>~51?^y#@R93A5gG6c8#tvabL7c>an3d!}BV$ z>WX*efst>S?W5nNOSkxAn`+%^9Na7#6h{y|K`-ndzx|Lse>+_rpk&dj=XX!Y5`k;V zeK6_DZhyhLar;;@)ppta!yfD4)(3UP$0OJ!{Aj#BW=I(jsrXE{FMcWCw8o6aNJAlq zJJanT^tfCCGFU$N@K2mkQ)C`LNydccx=%J!pc6*vjaL%EU2{JnB*aL*Vvf)j|Mog* zYlNWbrrO$Eoml56XQc5-ju&-$!5;P*E|nOkyMKS6v$4NpjNUUwpPwoFKk;YuPla%h zK_nYG3aCQM`MbeHQ;WfiuYja%E;z+Yn3+X~`)La?SceThYS3 zL4S0<EDhVwzN(AIT7=PA@4iu8TFC8Wz$Dz z^bcgz$FU@P&h2O}9aJ9ChO8#h#DsE_+_rj}Y%(os?opxn^MLp#`#%8mdof7J%3}UcS-MQy|eXH^KLqD<$o2NXIK(k8-Q`6 zf`WVCKy%>&_sSeNa)o;@9GMd&(=^S2h}+76X5~ml)0`ESIZ;c|7TKawOe%Ua%}gt+ zukYvi^IX@to^{_p&RMntARQn(JEp?(=kcprc|gZS@l~scuje;TJc&IK(K0iXZGT-M zIB>*$TjxYEFI^zExSZd}X?(wSx?s{e-`iqNO-{&YbCGU{T69b0Burh8p6i$se)ZtL zpClYFvot55p+w&Bw5p?=if*;ULN&C?Mq-ES7yPr?)|OID!<)w7PVFiPbhXAk?5bUk zZc2Q<-^eRH#t%hFJQVRmo~9m>UWYYXJfktllVO5@0KQ*1l1Xbw(>?T(?0wxnSuv*2+~ZCy zPv);$!KsT}jpWA&XCGC9#5LQT!d|!4(LVS88uPZFi$1B4w5>YZ23q~J9Dm)Z8%+9D zw{38Rz{YbS+%e-l`Jb2e&!Q?e6{@Rn&NlmJq19{@Gm|pglylMQVrx;eogx{kyuLNp zd+@VB_+?E3UzsX);kXJ@-Tw-`Ba{leVbyGR(>Np6PA*>rC1vcLKD3QdE34|Gl-c$T zUNf!-KFnF2vEr3WPGW4<=zkQYos}4f$Eax(LSO0EYw;@&61NZJ+Akm-@ABNns$Rb& zxhjIqjG=WpeOTJh`2%=~@dbX|MCG5zAtz~3{{mos7|?*;)cZdiKdQ0*NgqW$y7-wd zKZ%znZ~t;TH;{M$v)8Q)L=GCABkC8{S%jZ|3s|5LQ{*DgN%T$k2!AMUO1ee;1>gkp zTQuS-pv7W|amU4J#Q+n6M5o2awWGa7a-h>T&Tr{k*3s$x@rx?4H;jbROaX{NFjh`; z?Z-B5%Rzx?x=LgoAx(TWBcH6%aQf`vaCwh<MS}KwTxhzaqMdTV4sJFBt1)R zGBLK({IhtYV+m{N`~?fz<|q?1tV?RL)p#(|ReI(*Gu=#G1%HWgj|z_uSiN1%F9^64 zwwy*?bO9I`^N!sqQhxY25VIqQw(zg+bsOx6?aQepH_2qOsBhMdXk4{-&wjckg@uka z9kz#-Rqz{7B*IG|*QP$GRll~btGsj~Z;iHeZdYl{E0^JTa)!sY=HQt3iuqc#tr9ct z?1Rh4ZQHP@=70D+_A%BOQ{@;LWp@%8b6}Xn(th7U=q_Z8 zIT!{Kc^Vk&H?E*ocP9)2cIj-}_`R%HkZP`w({_9+Nqh8|CC0S)=^f;tIKPU ze0D?!CWhuchdKebh6T}bVf5aN&lII&*Gg6S%RzCIM7bsK7AH^^n?dOVK-h~&ER=sD$TI(49ij7=o!xA` z&}oG(tbZ{(oy7lP@-M(x`qZ{7a*Qy95N#kO=lyJueq*)0w`L~oo4wX4=t>I)&$7z$U7Mj$Zw%dwdf}5CDJzsh&=XDWZs&B>0=Ao zDNO!PW!JE-SEAXIZaC9{-^WirO22nhI~sIHMStKKj&{ca%sk ziptjWcEHH%i4{#yMD#BVk4E!f?EW)g_DM1SjjB?w*@d*_vMXH$7m zW7eKwxFeo+Vl#bL2*Q~4I=XFH5wo7RF1M-Nfo5f{Rio%xRqIN#^e~1*>03a)7y+Qm zSCe{Zoj=y*sYtDoM*|~Ok#Phn;-CKKTz|PHAGsy|!(8=MQ!rm_$Rn9w4Wv|k)l3;< zFAJ>M6Q{zUE{uazCO>jE(g-LwSejmQ4OLmmY}06-6wIAbZmpBKP{);h_n(@SRD^0l z5;gy{^sXZG*Uj)*n$=hB6I3AZl7IQt{9BpxWr3wh64$BJO^DM#qy~C8ywDwLEr0Sr z^M;TTqpe8T#nk2K$?VlAyNkmclos3jN&iuto*s5l+$Jd~%8&Xe*hUq=kaXU)d-<|E zA2v`2d})v}yWARDNbA)mK{#JVb1>a^lNp?3$=kRx5kR=QANWu z!oK!fb|vQ}DfWN(Z9Y9vnYr>?>3=THz&41`^)etkjH}o-SCd~Zp8hTO(lkY+M@cq0 zR9b{bA6S^U^F-z$tg1zZr|P=DySZK+;6oU_9(=3Y$L3|BfQjAv&sk89lnkEYw|{^e z!GZnL671jwsaT{y0m$q4=0DNumyW8Oz{-*1zrtsF>vYPG$fwM8-=$00Er06zJYJQU znhat4GLqo$FVF@CgKV~#u)Cy;8CQniBG+R&fyB5v4SC6z=8uM_3 zTTG1JN^H&KZ-Up`8|ja2GJimRTCwA2eM%StkT>s{G%1#?ma@`975M?{%mjIUo*qM; z$EWHP(W5x&Q{aIjQB0OZ3#C`REzM*~%PSGcLk-cwZ^pB&M7tZOZnj11IwmuK$~n8* zhp(^YE0hN}B&R=khA*PZJ-=(TI?95ye0MIo zeHAYQ=js8FPZXG+=AcyH_W?xV^W|gbEOreiEy6vX2Otn~-XlNTkO~c_jmqoijb;ZU zBF^|ccZjMu)zE{eeSb@q9w*AYxFb&2M(Vy2o}kXXP}C&w3_+Zc>dDUfh1#0_Q~AC@ z6jl4RmDoH0e|X%9sDSG_;_9bKYx_j=gG~0C@b{96<@f_hw$O#Y03RJAsfw`K+JcGw z#_%f+CKj+R$P>qQIn@<)L>rd;uxmv7p%w;kO~E<9|EZpb>3J;RUYIqY^`w8XfQ?|g?Rk!;6bwqS%}!S4qaPpiTrAv(=C;H)3SkXw+!eia8ZD{ z`nBS*K*(Ht%Tpni?_2M+cex6Gb3cANW!Lu414jYw_hGxzSM_g~@iwCeO-SW7WA^&z<|rAWjo(PnFU0_uGLPJy zLNHJps3BsSzQreBi}B8YS0g;aj-?v(mI(i<%GCj zE`U#IFTHu>=!h4W*J^AELH8N(p}aL=hK+d9lz;C1O_l0HM@s(!Mn5LV85)Voi!}dg z(BnlAC}s_{q^&9cY{hr21Xqzxqovj_Ncp z!pB1b3AsKhYF@l*D|`)HU`cWYUaz=m@9{EC;+=w8zS+rd3j@-UCfQX_!sCszd2GF< zFgKqR6GtPW931*|{B@t5jw>n;{>FG@xqsY&?OKDmO-a0o{!y-X#AuWQ{Dj)#T3c^F ztA1OO{M+TI3jK7s49a;Uy)=a5L!h*X>_N{r2UAXzZ-SIpfIxVjfh5_zfg*jo30J;t zkizhsdoQ-CB%|etix$n``W05K22x+#@fGp6Y!G>P6UW1J@L7Y3)7J1|>3rAd@qZ?& zuaw&sbMoMuW6Tp1j*MlV*=e&0{Ec8?#6VTao|JHsRHYViEz2)J`-U`MPKZ-)#I7ar z<+Hpby_)9&nMUY$jnj-*rD!1_oW6tp#crhgGM^kkcmnM~*=8PYzoDH2R%bO-t<=uZ z`AtNvfCJ$4lH+f-pu*3ZXvz@PPJj7;B#9f8nO}g5Jc}Rs0A8B;S4MgSrnjc$_XHL5 z_f=f8nD6heZu=ZSw(~#^_)?$N)xUt}`eoGbGgAJ)nphzkN8Q;R1b4hs!R85X{(244 z5X<%y!hCXniB1-~x8|->qPlF)Ix0X=crIy<(#stb3ru}I**Gc{e%Iqp*MAu&E31w< zaY%^SkKVcbVN(D`@dD-h!tKU$IHKYS2+H+7EHa&5QYXsu-HKW(HJ-?;;7E|;-ars1{ml1jWhG}@_WK#?rUCnR+b=hpIK-VOK{lr3rra$( z!=EPol`B(@z}M4pP2E46XRA8anPKx&{MBZFXR6J$%YWg6(=xxvbH4U4 z#hDRXc|QTH&7KlW?ScD6ZD8B+f{IYJwe*(;;x?X4RRj;E(Xu{~y&O$~aaCp%BHC_Q z^z_ZK8VQakt31Lx4)V_F`1g&2%o&2<%dI_9r%!^vt1nbc5hN0~T{}u|{E^{n&0Q*g zjry?!w8Ou%>ydsY{C@!)oA$YXG+-o4jy5mt?(ZM_&Qaq<)f&RdU!{*YO{yN*4!y+ z#z}rL>-tHP8h-%8uk#0O^P=|8xqyg!Jtym=Paryu(+a}_R;*~Q(fYh%SdpdpU)97! zNK=Po%SUtGHGfgj?z}%&W7Hb`dc{kqq%yf=6U$OHh)-Z%nvQqZnvvI%b)j_gFE>%% zKf)PU2pc@STX&b$%Y1Rg9+c|mzkdY%jwBqo!@E{>V8vqv%%%iaCID z$W{Fm+sqSAXwU15@$1hpRuH5HWH!>eeFQ z?IihIhQaE|qRLxHxGT=Nx^!6B@eV79Ke;|Nnt0}8veh4;u+6qm%{!ce-Q@Z0lVNAm z&E$efa8&Pp9ym_#uhs>Z-+jZ4ir&qN4)!CW&4n=K8t0UyFK=)p| z|2R*4fs<@u^I91Q>t`!92FJd|Z!XS9bx?M7oHr(WOhdjp{sqimjp65!y57^F`dU`I z(0?$q%p)a?pn_lx6#79hhZnfIzQzwEo?5|AB!8HIPJck*pmuWwHy)LJj={u>43E}% z%kTpNLA?3$2=9%Mg0W|y=hw3e+|SL)x$_XVrM%JNsh~_S*84bIk2j9R=V-;7f zN`EPk#%Y6ZlVLLVVa0Hm^JZi7>qDtv0aH_@o@!~S72J>7NH?Inj3UeD7XK>wk%h+b zBa)Y2`~@(tp)$ZOd2a+gWHwVwyGkk5k5Nnx>WMdQPJhEU9zS{5TeY7EK-~2>>1|-zGWCir0cc(< zt{GZ511;dafW4vS3PDLTa-NFa-@`u-|eE~hTs~gn|-nGU1+}p!ziJ}!1&O_RP@o0Rds1a`hNuT z(hL?_-F{E6*5XzJyJQB)N#%RDrW#sW-ta3+D9`V{7O(J$^Ng6ZvFFMP`?RRyk3(%j z5A6z~_*FBg|Jr_SW@ZmOt(>*>7a$g`JL`BK=(sfV7vMsjyVLj=z^H-Xu2ECEeD0p4 z@WzyrHTDw^(Nw4}ETd)l&6cWTEPvJFZ!iN4G*=5&b2q@%r3v=3z#D8!vA(j43yCk1 zD(|BV!rgBK>z@0}f1{QoSdP3NS15|s=EQj7dGFtpe@;xqM{HR-&% zm&ih5tNwmbq?oG~9N!pubun_P&O~X3HUbO{`c56mZjUP!mKp60RYKQrijCf{c`Xrnaj%thiVTyUq3S_ z4VpYPjI^y#6@P~=@QgI>wuU~w&@gp5x!BIaZoM=!X^Sixp>92cdOEI47b5oYexN;a;Bu#+68JJX+Gyy9f^*FNu!>1Rg6+54w+nZ?4Q7M(-M0oOt@bbsB02&@($hwd454l&IMVaZv0~;+pcyjvFU+0Yl*9Ar)354sbw*<50TNF)&v)4Ce&*Bi-mgGy zqfG26*!Kc&i+_K)(7gMWGvm*H)Gv${aU$ZNr8_TtD0_JYp z4&{I3bNwh*fX4^d;hxT>)VN(J3^53j+Fgr=SozNTayT$PS!seJrmKPp_hMy zdXMHWTz_~QUgVr2(I9137>&CS-SPq;5G)hY;Io>!2|aemSA3+k?YAAqMDMB;Fr>#o zAW~BMN;RbRKXQbsFaG9X=!rd9MPJIwiDFv4N?LlDDkDLu3)=SR6*9#lpSOz{|Kw@{ zxb$a{)ReD>0cQ@!i~8nmkpv811|}G^fo6#~rGEk8c2V9vrLZ6XTt@<96%6zlmpojJ z>cr`>=+Rfn>_m}88)uEqHGzlcFn5%)sQad`va{e)@^-mve-d)CQ-j?D=7nEmoi1I5NR zet)~;=^JmQDx{Pl9zB!~-UjkoF&l2)m&bw=oY0R9Xrpt32GY~fyxU4TIe!37mOe4} z36g>9Wr%C9mqQLFyAL(^ng(T)FK$T#ZYsKNuD0-+P~9G*f)5>sAK00$waj_Wq&T!X zJh{);PNNrpnOK|Q4;w42-UTAOunaEp9;iIUugbiCj$RuDn$k*?~|qc-MS5FAMP6~1X&RIgwN~5 z1?=V2@;QgQNt%4CQ*ux4UQ|LC8h?ZIU{ikzYXmzqc$}E@L-6t>;oIkoHH9SG1ejAz za&)BI4E}GLM|IfU8Dlqg;)ezw_F`Mxd!x_vLAXd^G@wZ*>CB);{GOEa^M8ATLhb)K z(0R=$GUxbbsMk&jiuqqURgDm)%^mDUKq(mg07 ztmIJib3Gm-7c5)ks4>t5-wA671@Qs%LWx(SC89^shLtN9WslQLMwlPG(yVd&3}Wi3 zuAxT|>kCA2hSR_=^is+FuYWOtOL2^+PZSFniPrCHb#mNZQ*AB_}=2vspm-YdPhf zs66qecrnz3{*sB(^@^wILk#cR-}1A&{QPt&?^b50W8y8byuQ~Uqrd%>BT|tWg&5b z5R0wg+V&f(%i`35dgPF^5_;Wcuq;pB=Wr|-D;@5{%H$f|VYQ`L(0#U?ioA23Y6b8T z6G5d;nH8|t3ueXD0Lgy?y~y?+u>G}5hK_^veT6W)q5J}e%YRr@nUUeh5lMAF0H2=6 ze~G)0o^x$WbhjHx2A;V5zQyk3;M$e=i@7%PUhF6aE&PMA-1%fqlv`cQJumTyiQHlbO7E|w>Dv-3XCE z4vIuL*delLN?eE|xhJkwG&>E6`bT*Hk=gN>!FHLVz7l`mgfTpfSsN%nQ?& zZrP{ISpnpEN*nQ8f$X1w|D4|SqUAo3-I>yl7cBhv?SFi=!`(>%?8BQ<+E4iVA>~vwvOwj5mB}+oD-5)Hjs4;gf8vt*K>enh%oj(Z6|&Qh09<=@+;v2^u+m_Iq9O zI45AGw4@TIXLqAAY=L*fvaZV`_V$OZ{6gP^qPt_$Bj;uWq6lqH*B|kyImNcPH+YLY z5`O*^seca(<0HAc>vQ~3tS=XX^jn%>AxDiUV zr`kdsoJKz)IW^OTRfywa*gzt0gew0WtlYTXB!4pDz8PDfp3D`Ritn^gO{JKKSl8OS zP&RMW)XN6V;HiwJ( zc&b+6XkfTOteKatm)f^kKmQ0tkeMYp5-p2a~`USkw4FNYN~YCW@I+!tS)~kGiIMCZ50A^Wv1PYlcz-H^dUnGUKGtZJ-iM-di{$d~X+OGF@4zqc zRKB;~Bz5402=R>p*l1o-z&`j~QYg70EdgAiP)luoV$jm&-^i?(RyCOtEa%l@aAht_iBPNRjzz>@Vo6qe+ddMOV1IW4y>}tQ zsrL$N*k)kx(CvafKJ&v<{F1aBQmZh-9H9(M+c(CPY)?q966d$s(5H2A-3r-vs%!BU zFI886!lCzesh^g#0UW_ODqXWAH5~96721Lq7*w@ zSkdjY>GPdPE<^sP`<9{Cnty?Lgp0V`KFV-wn%4H7{7|gM%MBlP;-2C1^!%JD7|s6T zz$fFp$|Q@(;kzVe1;hA089R`lB(Sc|@aX(kxH2p(NL+~KzecM+C$UxQl>Vv>uU+rS z8Y|C)0>;^u8;0v^fPS2ni!?0 zeS%`!)HPgJ)&nIhRR!*l2e=eSfU~9N>;Fg-hER^o!z))xMwXdYk6$Zd{MDf#KzDjN3eYVW^#p zmA2pJ-8dR_jxVj!>6~_zT!h&`IAF%NZuPID~x`#D!fOZ|$=qqkmf}cFs}n0^_?d#(a7} zxm_J{?R}idk&)Z7c!(+tS#$0_VrzU&BTzv4cu^$%SrKHLVWTp+9Xa!5^^d@$+W68D zZ_*uN@&jK?62;t8Cp1SG8ubcSL*;Pn)_7x zT<>U#b(7*~tbdIs(+cx*(<;{;`x`69ma*0>XTSswyDOfD2GpC;@KAjf0YRVFI|xH* zVLPmPjCtjB>3La#LHZeVK%0PAT;7L8CvqFc#jjXYyKJqfK0YGI^+!b9(F8}3{BQccBFYmF$rTIG#+6Ib9_Q zc}gGRH|~O7${ylNzDwto>XT8;w7TL-ugKt|?lHn=uhCsrVDk~|-|TjyfqRG-yNLWO zTKZ(O1;k2fa)!!aW#@a_Pnnh0V}nUFGPpCuIgukTHEiRBSGo`@1G2MOR^2FK4eIDS zng*~2ut40ZKsaX->AZl&svb=PXp8|WNJHqoPR@qZR4R2aE^|R#i3*gmyTMg2T~tG#0@oVz^^y6ZEGZigu}q7Kp$A>&mQm%+`ZVI@ zRiE1pHtPWh_zM!1MgPpFtWGxPZ4aSK2SQ#br_8AB7s^zzv($@U2p-KNy9Uu#MuBN- zf*X$&pA!)JHym$EsWoO@8QZn52QzHk-+yW%DoWiFW8q#OL`m|4IFDZ(H6~ZO5h8cO z8RfexW?lXNhb@-nWW0$J{b2rCT`65`b*Ex5xc1tW^d)nns#P1Z0XB7Q>k-%d>okBh z?UhSEnJS@bU!V2x1lc^t!%3#Y3gRC~&dp#&N_cuybzH`*?++(7_BrqAL*(xxpMTd` zomW-FZ)kfi!p5PgNeck|tm0XDMq;*)W^UlVNGvPnR1Oi-%~ZkIk$)D1dcNuKRc;P* zwIy!^5)zJj#M<#3BgKFCxp;S6eF8UqTi6rxu_+hAjGOo>k+iXC(s|ZZ14fymoWBMB zf;#Uldd0!-m$uQLKhCW{^Y>(9vVSb!XCAUBUuy&TlpHz1qJVc^GtOALphgCweJt|c zKY_op?)?YN*Ny62bYk-a-Sm4@nw|@nR~gZm7}6Y=>x_OoT6@)}-Dv6N3q=K#M6Fes z-)v19bJfw{X5>l;6>xX4Q05SJ51>nj49I9=AMb*1NewxlCrHfewT|HbTYt2&yM|%p zcLv=opcBMgAu9YpUXH4oh$$G~XD>^4db3gC0!5#IT{}k&u-ub>Q+fmH*TY$l0o*dG zV+CAtxPY__Mz#FbuvUmd>*}xOi;O|}K1xwUX)aL0RYvAf>gMBtJ;^^%+f;uc%zj;) zpH;K)6dk#Oy(js}z>NQ-v4271vx0M&Up~cxhdpxRTrO*Eg2p+}x4xI=4A#TE%#Y|$ zy8TV^t72ZNW)AU;q=egJeHjc%R-cGRfSQTG9D1EvkijEtL21Oeh`5wCx|iz;OViQ3 zD;OaSw?%u2m$xS^geMJILb^ZfBxWuG*g2F6pa=u?-xY?hjFin&PJil*gHxtqwRE5A z^S)s!{oyO`oo4M(I3|VitmrUcar@*6ot9E;u8Me*RiTBTD$iMoo?90XS4C)TglB(T z-6Fpr`IOtuZ*|+HuC=hv0N2!z_$lkIkCx3|g0LCf3*3GIpE4hWCBMhVk64bTg{6K1TwKG#dOt3{f!`-`FvnQ%5MPh&<(iRr7x4LfF2++R;>b zP+~{rBffSsrN#2AzKSs#iHJ4+c>#2w_OhO4b686=_rzz7FHj!*f<^e8%nU0F;^w4& zCMqhu7;rAcfv@y)P1QNXVYnYKe@)L(mTPlzH0cn|PgOOIc7Kms>D>Br5$QGf)J@(T zaYOQi0T>Lyp+Z_zy-PCX{H`Wc`uU#$Vdp>R3mca=xQbX}O+`H+-Ued7WxVyn2GA#P zi3omNcW+0vq~M^AN6)_fRf46#>LQni?mTSH5@OO#;5EDkB{g zsLI|w6OpYr%~KaBKqn`FF7$E8*A)bod#BiE{l4Zezklmh7@1sc;M21G$1XrbKuA7V z))ZoO+IBZ=u%?Azy!fGPN;dE>pmZXgbc)F@=VU%OnLZ7$9Z1<--LLTdXlZ+#7CnLM z*)xDJLDO>4ToOeMBOPBZ|;sjmPn1&lTY%G0w*_rUGdtZupU^WPKoDTr3ZCfCRDtR=sq%f*Kd)Qh~7 zP>z;|Q6ZzaJ%hVg9B6T~wO-7`$O=uZ*HGih)L`AKv@J+abs(azbf*49=3p%+} z9iel$rboU`c)ax(FS7F9#cJFa!uYr3-Dv`;r)yBcpsU8W4_+E zBs!^g{+My!n(bIpZITR3t3X(5pR??InSa|FKDZNX6;Z8s{7cSJ82FE^JdHKzgI8>^ z)JFsgUI=2lMY_*21r211H)n4-rV+jXBmV;8Q*oOxN3vo8FTV^#y4yLlh&M#;XFgks z7n0vyA{_=96j%5QxF=I5e9bVwEKYOsN1>MwhR3IVH16>YW2aCV)ekE5@>l8>$$$O~ zT56zdHrc!l(X$?=g6HAmSD^Ln@z}+iYumyB7WvUNj}%xsJq5GRy6fY79c%gY2dM7z zxR)8gPk?db=SXRpd5O86;J46F11+W_ii-5sHN{yx5=V{Buf)+D1VODRnL3ECiFSq+ z<=0?k#|3MqGw4pENCIVueh)%@41cJXA_ZAZd;Va5Wv~BiNS;h;DiUMU>;i1OZcuWt zk@YsxFcpcH9W#x-ZkOC>u$6ZI)%TLr1DCj^gN3Tj9xTD2su~w{hokv&Q{7=};9eug zA~py9vPN5k$4W4!n6lr%)Kn9Z-UZ#;#gCQ+`$(UzjOOUM--KL@9i7cCw12Z|*cx{- zmCoez1&0YFL`Hx`CShXnhnoEIS`VOM0|=g(KcEwVdc2gxD5sBQu;O1G$G@k_G(Qpnc<^;#W)XiplbdA>#PjcpWfPxYa>OvrCj{4Mc#)RgnbKOV z+?j20+}nOY9Z=}823w`F0qAGkrPM~8l*=iqWl4fqEE{Eut)~yQfCNR<(aP)=MPj zjb;d1haGGG&eV6seUqzpxm~W${qn}ILQ`66vch0`(aR{BHH7#2Ay~yUf#uQhc&$1D zs0b9QYv5Y3*=Y_D9XQ`ochb2~os)k7 zg6Z8?U+^?|56{*~s*uY=VEs@TsS0|D+0H-iHaZ&dap~%He{@@ebg!cu$T1DGWhea+ zCYvnwK%8m8m9rs3Nbi4vcyP?zLn3^&DTin(247VmdQPflbTc*FG;5-ti&)3|^4e}O z9X6$TkK7ACju}_VDaH0|1`Psg>vwqzX#Qp8QI7T*D51l4hhLeWq+dH;u~7GlDN_QB zWrkHVQpJe?y}H~5i@J0jv6y(6lRaZW&f%)U=|))~PjT1=#p{3ll1?hYio(X4@&?$@ z+@&n)2fJSh#OWd8Z=T2cMZ74BW7xeAxX6&Mek^^)oiQjn+X^J$s;vtaY#JR7X)Y}; z*r7@U=+A-wWjC1m8u<6~R5>L7%s(y-xgmT@1u~+0*Wt&!(e;;8yb8Bj!!!jv6rVwy z+!2u+#ZLj#$Z>xebln_Aym~hygPyY$#|&O>LrRNjKEMHEd+G@5>1>`|u`5LYVsKZR zQQ({4bG&-0(SkL`4P4VOOuosq4&IU|^+VG@7&;CMn+W>Ry!4}tDReQ+=c(t@s(WAF z5&@x7Jr(##XzBx^!d%B6hW)9s;3K87=7>wL=XU{Z2$z4ZrVkHlVGih+w_A3~xD;uE z!6BzxvSps$=SJ%52mXM*&OP@7MPMz&VjfNWIXd;3)DiYdieH+~pPF!Wx-jLdj2UG) zNVQ}~>A?+$@eAZ+Zi*!wJX5tsbAY_MM!HSfh%M42i0&V^Z3Q}Fo{_GDOo1v{j#HdY zn(OF)uKs@me?-em28v0NvQv8Hs8jJ0Tj!PyI%eoR>H=dw%S*S7-k+I8nKSH%-$F>X z*sC6hE47mzRk@SP!$L{z1ZPa;=^Bnm@1bw4S7 z_F6YdE-^6X%dw3zrH*#CbW-{l`fOtyGf05(xK3Jsmaa8V`ZKg1xh<(zXF;?NXQ7MN ziXeZJCEH5GNfB@36ThlBAM3#Jd}4I;(y@}#l!@u@GBKj%zXbzk_)el7?@Ra8-H~XK zCp}zb475$IAuB$0dB3cCcFqN44Mz z>OOvza{T`OgpHF`--%9dYx|Dl)_7$buZn+(lqrRuefQs;p@tic5ertua%wuLvME8B zBj!W!w#42sO8Byk;+1|r%$AM0_{d902}iMnlWn&Po*|saWdO4v<}CPp0q}Ic*wKI~ zBsHD?uV>@V9I3e0Rr(lAWcfOH5g>4xu|G&d+O+ zRY`pDmpQVb^|v!2+up2@+}UC*J=*T_`lLm;O(aR(J_wv;jNJ7 z^{$*hrGmMY;^?jE*}1_mWSUCPp_xG#Ny?nClEyI5kYi&IW)gkW4H2`fc@}>-nRP9> z*#ZIvig?pnd0o9QaI53g zo`_yfRa0A=vC>@7vdRPLNI6)y8cp5L3G|Pc)lqSKwWAJE0`5Q}*ikYM7|)o+#LKr6 zO7Az%RP)g6nBrq>*d920E6sm5!2xeYd<4!Rtx@yf;K?StW;oS$>(^wFxC-Rp$B!$@ z>fXfYAuJ*@WVPY`P1S11B9!{lxJrYnD^c9qcwEp`PMqN?;$FPgP8*hmY6)s?QU+kt z;0C3}!hdmK{t`sp4Z&6F0FO$yYz4ZrO}44BejV%ZD1F#|G=+sec#(hJn^Rck>My1m z6ko+LnM!PJ6XeoYjV&QEqDLtia#du(t02L+V3n&X_An=R3MqfFew8f9{%-)c(MWnR zdIUNmRUtjL=$!ZkQk>SRB;bk{s-(C0kB^U~=JQ8G zy3%wsfWE-US>JT(F`P~R)X6im z2Tj3I(89v6QLRPj=p+|ggue4FB<4ILE1$Yku`tjR}8WlwVL5}hb6kD zAJCzBgVJJI1t)UXXE_pLnrG8|{f|Nw+_q{3a$U|w7Mh&AAb0O$%Gs|ckIz9wvM-mc zsTN7rL!QO{V8Y|Ek2p}l_c-QZuTHvc^nP;^j`+CCck9aN{AgD6Xjk`X(k;puco&!o zIdFi${{kS3;`4u7kmkPtp28@Xd9J>!#Qs*q^O|dKvPgSW*I|^1w}PubRos6OI7O1N zYyg|Iaa35lyBn>b?Zh#=-%I5ZfqE1{f|Lm){T9;;!mbO7HPyyE%f|=|oYL<}w&NFV zJsclYPun|*I$330Z@Xh zsGQwg^m6OOroh22DlpDL0Hr8Gv@7rD*WikW7TsoAlyFqYl4=4>`05?HLch@H&x@Ys zJj}-s(izCJJ>Zc9$4MewTr;YLXp`6K0Vz#A$f@s2Z@X7_FP1G zV;!WhR<%ebrIh3^l?+v&VuMFUNfN4|jTh2yZt@t*Q`c#qCUC05jjnF`A{6@FKIXD! zd2(Pj4win*KJiZnl36NhV+4^W!gR+N*<<8g=BrD ziblTHPz2HPLFmW3<7*sxg%3XMW>T*n`XGxKDqd zE>=c+NJT&HZj4EdnNWTB*68Y{f^-*Dfa0Ti+b?aDv@y2!X}@@YPOrwlDCo00w0z`> z1vipbS`&>(x_7PIfLaBFQ1LX@=@n*Z? z42@pW_7%Q7p`xk%k`m+3XTh@$J@9kSt<)n@Iqu!zHVovZK*3&t=y$SyJaBrI3a6N6 z>8VF*KdD!L7_cgKjMCe}kV-@O8%)QthLpx;uMwkkf*mndg)=#lC>GrDGc12fqNx%N zl@{4;EJs%QEr1;=X&SHN@B8rt8Yc?M)yX!>kRmS4jb@Rx$OU)pKyMIyGsxL1LPr3G#+dTr??LGzJ=6LBZVvJCPyuY*y?{?|42#V8Ud&u zgXgSPe{9%#oTx7!`i}hUVCs3%1$d|>NJd8TMoUGb}Ro`h7} z^idL?$6*i<{k;M-?ST@k2%DrM5@Yt{VGH8g;=sTK?LEUlOet@h6BHf1P_{8 zR$i&JGvz`8CDx}?H|oteC>fEQD&;l)TitI8<~6ii1>GgJu>n?fUEW{xZjavnqdL+% z)z*B*4PC+Wqga8H`0E+@MoulCh%-<(v@#Wis7nn#?Df4z-%W(Jm_Q#3)qA{dqO}w) zzXy@13cN2U;OT$w;L6Hm@CiRh2Zgngj-YS`XXyHaVT^0#68HHZE>X^CtX(5&>kUp^ zZSg$cCq%KSqpZ2)xs`h>)I+fX&Ka&}QTK=f@oU5Pp2V+-h5;=Jf;B(g4EWk~gBCBk zymM2uy)bGnc%-17OePBshL#K}zCyLXrF>TXhe|7Kt;v7l+;;iL*&K8CvtPAN$K44Z zSmh7!^x&QJVBgpyG0sc z=SJ|u>n=H!UfBiP{ql;MmfQo+VCD;mHevDwF0`!CIA>Muxa&F&8Y~6WE~T+B#>2mx zRF`~pB+7rDbVKi_n;l-U>GEm{Uh31K>)vU^q>qRv6cNPXpM}?q%KZT_Z>vJLkWqHH zgVe7wf4q<;c3QL^(>g%rtoHSKfQ`tEVPD=3WBE*(>#cm+kvK&9Bm;ibyPjiV2VF4; zASj`)KkOSeDx!R}s>Q3qnY z7#$0A2KBnJLNv}k`KQFn$!4S0B8%Err5M=4h0Q1)+G;b`pEz)uc&fNbJo&bN6v=bn z$ze@NoSJ!J7g!Y0MWy7Azt{dz*AvgnOk7nh`hcE&!zSJ|CAK!(YsvtO0@EJ(%$LyP zMAUzJu3cdR9-HvUUEKmf0g0aN*$t8(S6TKas>e1QIa)GD3KW&sQX%wqY5fCe&|DYL zXXC*~;~E)3DAIO&1C9<4ih(+Xj>iQ1QKY+A=})0`-i%jlTad_<>eLnTO%X}<0YB*c zvp+{A`fN z-uwH3YZga=C_VyACbf1d5>57WKY<$2to7y;992xKXZppvM^3^0Wm5hCYUVZd2$+kpi6v7(Ot2H(^@qZJ+K+!?t|r*F zvqZC{Pl)O9YX7|I)pZpANC#K3N8N~r4NTH8&)%;sS1*| zBCWN7A5>KB7nYgIyvReq9FJjWp5(mf(Fat=AR=5$t*)?3e+QVVSa7`+oKte&M9a5% z6X=M~T`Mm^ZY3Q|Lx=>I{I7rYMT%A0)-Je7S;kOLYDk-moXb2ldJ_dX#q z-B?V?)wpVE5`(O-ek@X3&Wq?r$$AT3df=r|({)qe@(#*`vCWje*yLOwU42S86^ms} z|7*gs_ZaOvM9ay^8>0g0X%H^CKb~t}7QFo_^I^Y-n zQ5W+jZfV#~u~wdxR_a?h;H$Xl2bj{mh(O+H7L1je(&L7Rt+ga}S`cqqfG%io3$Tze_Q*>M`qD$tLQ zGa^%u@5|2SIP@8^=1%D%!0_~7OL5II_`mT`A>}Y@F{zkzzOU&ZSeH(rh znJ51Wjo<-VlvGMX)xGR^Cgr8MnKX}Nu~iZhJ8MX*$602M`{`IZVnH-E zgAY&rXm-SGB`Rv=i3_%N<7SkDg_&+Y)g#X@@Fof;FmIr=w;LTVkb~*7VFLzBgS@*E zPsrd7id@5CPnCb^)WA19cUXYuXkUr{GI(6&$-gzTuznpIOSASA3S`}T)?I6C@?Q92 z)Uk?Mxo0%Ygd8fFE|>bOw4S4=LpKgTLl>cy2UmMK8v_D;y6JYr8wNfUkQ-&>uKV-3 zhA9N!XQLsC(voXjpXVa3@)p9wV?a#;W#l$x%(8ovT?&61fSUdV{Ff8%1}#f--Y9!t zdi-HGdXRk29}l*w6Q-YyH<|Pz@J@XvhO;SWm8SY93na8Yn1rV1%Tm3;d*az!@H4Ys zagVuCT1bNB@h@|f)Lb}le5;9NF1(rd9>$cp(y4!PMM!Dp;+1|rGzYc}p({a{$f=?| z(i(VX5-Ul`f_SU&E>b_7uaJc~R4ftF+uHmUeop&tTY4_YAH68n$*=3@@KQ5s%n7F9 zw=~!5RX&?4lr=&4g(%u`ydp$mYvK%bOQ)!3vrw22pD(z2u z7(#!Wx=cZq`KMU4xCSBWuvG@1{XQjNSlc4s6D?+H4xuyZVf5!HcbFZgd{+=fD9Mx$ zA2dAdmap!PKhE#82}b#}3)(C!&5M{Z9%EHjFcB>gK)JUVa3mxY|N6}Q(E=;#Gj~1h zPW6$+;b7YHDpQCdIqeJjMe&&iF7}aySKNPvSB(X(BX_5_6F`qSIOegWLfhtD!RIWV z)K<&*pO4xv?J#x6#_UE^CZkdTao;s3rB%AT6FHk!f1I~@MuEP&^@2Cjw@ptjjg7T3g8mG|$kF6ahYFb{=7JlToz0oZxGd zZjBcjFQS$#bs=@D3G^Fp>>9opk@Ln9G&dS-0j)Iin~nHH3v9e~QJVCs59)t%#|4Y3 zWz9qJ=8*4dk5|SN9R!x#t<+`q^0%mCge4 z_3+XBN6Gw8rTtS6ynS(D(VMdHjj8&qVcLvUW8ujnQX$)*D1AEo%#5&6wa5L>dMt9U z#6$u71}G=c=e(5nE_P(StRemFyZqk8snHO(w9%6cXk2S+(zkL~gnEAvFrO@R=nW3WS$FOCOCi!Er zz`SzpOGi-8@~8RX|J*f=^>5OvlE#JtnyPDAO7>x_-aS1B8HGaLjuo)G;*e_hMEb3x zS#C7F!%GFUhi`t?diQ_sn(Udx^dEKlxo1?&*1c!QAmZ zNvSG%&NRnEnjP9%?;dAjnl5F&^P2FLEd5zh2wA7*YG8lUXI@V$>>YuS*2JQLS&-?O zShzUiN`fQP9GGfQtt3Q})Z`f|GnVNH*x>qadi6@dGP79CoCxg`u)3eh1FuK18UZ1Fm$1{F&0=Q@;|#gA%x1@#Jeo09(u$b+ds` z^n+}htmDG3=K?MN#l*nQ_jUOcggHM4iSjcN6e@qBZ12~Paf2d-F;9u17bHI%jk0Js zdY|H!}ihp#84gljenqSXIK0r87IYX0hm^ zzX1N0kU3rYBm2eQuHAVCAX>xyrDo{GC6Zli!>&3Upwzm3n)O^uyFH;7} zUBX9a2q4|$4!Z;V(IA2&g`x-)5|vUjj82?kPCs zght$5FhofW2hmuYCm1M=E5=;SVAa6ve9;rc^CiFPUKOCH;@fUS$HuTu#$99nq~w3! zT?%u){6v4k+v2XvpvWb9duZJ|J3o7`4LiJ{L|LamhPGEd``K-}e~Tp9gCDe`C-)6` z=%<@)LW8-tUpF;d!qzmEE2Z5PRC!koV3xaZw9nnoXObpT7Bb}*H?C2P^{Kj`_zV3l zE3AD3;a8nbZgchbCs+#dDLUM~JkNhxY(BF7w|HmGbHK}!Z#!gp59NK+-*Ss+MY84-+WJjD;pP@CS1J+} zK5@y(O=joa|40nKEJWKeDhB<-Qk~DwEsX#IK zJ`u%I3e(~@2hU(k!8Iilf-RE_L>J1ye6@g*7sXV%;Iw~SQU@=WqsORc z2NmcG8P$WP5qw9G|IKD;54$;a2&D&i{e} zw`)_huCBK^i~DF0sAw(g9V(A>L$%P7Bg8bkXNL+|@rV=}B+kVYc`AR`xust1jSKbM z^+E}+@fahGj#OQ{pA7}te79@!oe%>2<;7Eq%IdPW3XXyDL$&!n0+BK@aZ~sMCsQQ@ z(V!p1hs;C`#>pe;;tCFunqezeUza1Zm?OH#KFOx=PU)*b&!yb+dpH&V-zkT(#)$(^ z7v6Z)UX30z)T5!NJ z04~_f9Qs~E3c$IHGT|WP!OTUnCzcO2ccWacDte!o>v#)iG^2;Y95@~^{y+;qycA~6 z{5^vsb^XR&ZY`S3z>r#wLoPY~8?yUFx}U+>B`={Nl^!_lhBbeM;S88x)Q?Q4e_5@F zvDj7p&zpQ#c%I=uv7QSzvcvfYLX89doUbd#{+B{9Qtz)<#JQi#x2Sr}kRM<^o^7IQ zYt&r$Jr(jsGls?o>@s>!#o8D`Zcwf__`GzHlyvm1lwX`Ls@HOytA7OWyP1Qx)O0^35s zxow$JXJGMx#63c$WrLpGE>zVs>|)$V-uYW18Ip<kDvTwBKZ7+ zUZ#)<@Y`D?;0|rd7%zEzN6u^*ayILM6ZA8?@htK=$Ivf*=CjO-+L<2%%oqb3#1VeL zTcVcy0PcTh?FyWo#esQxbz}-RP1#1{-mHmN_i7^GsKb&^rL5|;*s!yN>dn}*={w*Z z{QkvLGssK!nXB=oKRAsvOvAYR<+M7NCpH> z>hNLAalM^f&Tr&hnw@ZcUNbn)h))a_{N zrcrNhcJvI2I3WqQnKFyu933qxw2s&)_S4m8 zm^hDL;DnZLg{g%+q1+pWeEj9vBVWWr&|nB7DW$jtZ9EbjAL78)Wwjr53iEJHdJO#x z?fHLLXXcsgv#K*Y8*Jw~JC||diYt?sHOq%j1RwK5;Dh%YFAPiMcg8I|3;^lGaDJS&P=3tm2Fb?YUn&8#n&Veo)j5bzhE@Pd%G8rOys z(>Pk^KOgLV_MN}0>NI+C^Hg3DHKHf7T1G z7Ub*`0qRExqchAi+g!!DuDOmhq{eCq)v;QT9m*9kmMwNBmtro>;GT_k`F=v~lYW2C z+*CM1-C0e9j2)Yq)RYE0K#l`*4Il@Tr1!rYGd@E>)UOY-n|RO;(gdSN(vbgpXPeok z*LTg&;y@~6``Ug3t=!{0(69M4D^DvJXB1|)xZRK=LKxQB}rp-KTzCIy#k}`kzwa$U@ zOI7h9)%$3#Q<#i&cj*_L!0FS)$MUJ9izr+5bm}{b{RSEGxZC@~G@|eQzqDRJ^j5u> zD66HWB16w^izcwppbXJTxdxeb|Cs)F+H2&Kr4R!>_o6NfqTk^Tpn+xAz5vXv{L%~k zRO4x#$TLd*R%(Dqy514sLS296!7MCQr};cFUxX8{ci?t$b4EbmSckr_!Wb|gVoP%;6@R1LeDdyLRh2|v!D%8f_kNNeIS$Eq<9({xkl4J4Y+ z7JOAp?2IxncT7I%kNhHPGjP*LW)}VU>dYmVyFDDWSXSsl!0Wld(KCMvluEBTwq?2W zH_Dkaj_8bZhIO>(Y~e6+hj6|hnTGWFamfpN5)zKRzwhv0o~FiJiT5xF+HuqDh-5hD)ku|_kfI(yQ$vgDaWhBp{M2vE=hWkDydV%7OcSUDY$caf^sI+59O*q8 zn0Udz07ml@9?gZ6!d z$$ajv5qL`HyE++ZU0Ylze4Z>49_9cNQ&sqHG_3I^(!0FcejX1`Kru#_qoWqGi@jF$ z&HP#iCcEV;1Y(#AM+;>k>1T~){9tp~g9a6m*1rIH0tf8;f-ZkT9_N}a9@%Fhh8uko z7pyb^ZPHky>^~UqId*5>K+|>2Jm9QdXM9ljoZ0MIwwolr)}mfSujrC(+c5RG+;_V^ zx$U!Qvfu}$jCJEZu(IWzkU209{^N@4k>G8S*+lsg$P4C=tulQ2+w|2>ljo;*d6lMH zX-Uk((~2bpTor$E!bL9|h}Nw_*f9od_6FW0n73NiAh=yx!AVwPNup`itq6J@v}h96 z+K^t-8BNov^yuHyPGA@mew{Cn?n+kXd_^*`0{TmOKfG=B8(FffMQV*>j*OKf@F7gxpyo5#*R!-1wB(PPJ5K$&*~sVu_ZY9 zg?vo!|(tqkzkT0Ez+7fD2`|O5)s*Az5{ap?T%sUg3Xs54Jce+hXeCba<}=%t6vMnWdSS zY+u3_D%*vy?!-pV2azos=Zo^XjxgaAf)M2X+k%zorV=W_#JYr|QVp9yGJ?BLy=R`~ zJ1fO!e7gKUio2$OqzDmZ)Q=BE@c?DnGRvAG@$Qry4FL#s6GIz~3rGdj@9_S%U#`Zq z7nXlMBk_(8*3kpr(!y`{`@+lOA~e5?kXRBG(n2*C1YtAa3yvJ#^Fw^!s!p7GFlswm zUZwWLqBY5%@gkpBZoKn7g7pS);8xb4$GRN}#Wc;uUE`-anqL&wgFDQ*7YftwxlQK3 zr_ko1x67{%Jz&mdX{e{uTA^|5nJP66*71MOBK(U6N$9%=53Y)M%et1e%60K4jy!?n zk8TWz(sQr!IfAk-bRLQj z2NFM7Xk{ED3o++YoPsR1uU@{XGb3{SY(c#`_Cs*l+Xx6xa;9^%9HO<@Sf&3j0G@wE zrBj?LlgQ^b5p^kl%z*($oPzwzM zSU;<}aIZT=(@pD=BA?csRr>nd3$zULDjVj{Eb~=1e%-_IEX#IFXOCUVdzW#Io~uR* z{U?KPs^b@N1|0m>=s@A?*=JyA!k&M8YJiu_T z_A`Q&sP!h~wR5?Q^8@PVU1^48{h>!>?<%z`L9}MU&Nr=JaB}66*?0@I(1d?7Kj-XC zvc}A`rXME0Gt%RG^%026zy$eO78f(t6C@_bll*2iBz$(#lTuYW2fg`O zOihGqZF39aq}y=dbn?B#I>mpT&r#r9P|ZvSq#*V~{o^N+io)XvC7HN0z9Wuz?(H`^ zQ@BQRu6AePo&0S^H?BxUSFNf=ckys_55@MpJ+SwanE}#!FjKIi$7>RdJomqV(v~x= zD<1y*?86LM%ihx}S*O~;w4vN%tI_H)lep-MVn-xC=zfF>K|ekLRvv%5F>}0xyyMfQ z_ZKk8_hpsSWt?fbyZVggWxQ9yI0D(f0x`94)Nm|)FrigQ5M!^8UMy}tUxPxT%a>IH z>E>e5*Uv!Cz#Ng=&v0+M=@JaAfYfO?PdV|L(XSl=0lRhv-v&>1eqw88o{$^0rg;&? zXib(KQQ?M%8&6@{S&Sj*H!u{tM`iN%wHpc-VVKAZFA}m;CEm zdB~JS++0*kgHu0aiZU$Krs#1o&IxZqykkz@E%X^C@xnaSjORy-m`U3xg`bXyTiPJ3 z-Y~w0Ifw|;9<8Mbw#1`T7*cWTO{MrS7h(?BNh8y@`}vm32poU*1nEwjU$zFp^$l8= z3Prwu=uYx5M83*I58XnpdA!F(T<+k#7@YUPT=1O|^rC61dG39vaH_{-QeBZAm|JXO(mUDY%}bJb}Fk!Vbha|~W` z>KK2#FjDdOtnq)hea}oG{5aOt@Q+)0@?-f%S72c4E-SGZlceV5&XC}?XWi$jSsEVz zz1ApK4o$MSh>q}m^HNXG3#E=j4SFG?(fIhSiPcaE-nMt=cyBQyR?dY!)7vpcwm-A(P6K{%dNCjJTiZpinloHGxV?7NygUQ&g#aG z6!e|WPYEFtLGUBm*xSw4L^zDP?Pq<(7AQ{+tu=lm6&oPQV}jA}&-8v1&%?1K@b@i} zg62B@0wBB(3OVl4j=n0f0rQxd00u?3ydap_7i{gPaC1j5uHUlGVVmjSYH&+AcR?a9 zk`Zi(6XkyfO>kt@+Fqr&lUZ3B1AUYOhlh_>H-5W!lSWJ1;#EQFe*qHPm;>vrY=ZPR z`vWZQN_wazoOstI)g0k|$znS(>vN#QDpS%sh$PDJ)6ApRPf#5Qi#q;{bS&7t%G`uv zzkB47efT?a%~WYR12y?aJ$8~H8cI$y$GIdgWHEn_*%>Fd^3E1KAQ;`cPgb)eY##>X za*#Kj&jo2Z_1iTUTSk3*l)G)I9HD+RhLYraE^78rF7q~VA$J;6 z;=3lkJbk4c;yPd*bv@{^Il_NTO{;S6U?tL>oP6e?Jcx)x6}$H0LUkIGbT` z@C+pt!n{_RRU8;$pIzJRI5mM8hqo!W!l-|5ef|O(z22|ne03YHv{x)DLSCY)-C1%J zVe}icRz_&?u6toak0kg%T`;N)ou`^{6vV8mhI;9@8zjzOlW4C%8|D->Mj~}9(YJ7g z`z3OzLF@QUmZwAoo?&zgi3+-+7lFRp5Y!ZDG=2P&l{xpwDKRn1D0_{_#bEtO3WNi+VLR|~Htc7uGDlPMn6G&dsk`hRSL~LR&pU3C==bW;BG$cW(_iIU zgpgde&SN*wV)Ex0B7H~Z^E7r_>`7_J>$XFu_C(w74oF)PP_p0M+R7C2LmnIg;UZdj zPE@5d4WsN&t+d9p8m0vOa#u8@?x}xcHr^RcCrl*|{0w)uURS8k8JM)6`m9j=)NR@K zGMlHraj~QML#It4hgs|ErSY#Alc|2(yP!B+^a1v@mZA<}oEjo-ZnC18G9#$zOa4%P7CN;4SrplYOVUemV`i4%mJaEjSMhMu zv)m{iJO%Uky2F|@h=40O{9p~Jb1f?sD56{VD|f)XXC+?-?b``oHQs;LGbCTVtsBwV zn%=o5LN;ZH`Ajz4E98oxXADJsDC#_}y?U2B$Qe-m`wd~GWPP!i=9!m4VU*(Ya~tI; ziy?lWNwb@&pi6dwK%!t+hCqw%Z}$u3ouGCBCliy3W%|f!`c$-Y8igmZe^jBp`lU2( zX|6H-`wh^Lq4+4nJY|2X!2lcno^Ac?@exyc`im=M0ZwG^4otE2xF{5a?RbD=q*3!3 zE@ALaUEIt=y~z<~%165%W*yB2dvQ-%|HTHx3(1i`>^N z4b=Dx;9H;?pYM1jp4`X1e=4VR2*VPHxUk|&9%6}N{rEm3&!hrkB(HRzFTH3HU8)Vw z6df2)Otg%mZZLnw);|eIl*n(U+3^Ka8u5ETeO5Q~0mp)1WeU)`trBamy^iYtMYM3I zi)ae%saR0sz*>fQZ;I(C?yf_ZuZRsEX{@cW9Cf=G7N$^?8vP3$FHxmgD~Ymz8nQgC z^UWK_Ioj(!TTAF39Ag@c2r>oEf}@HDlcypKQ7x+&H^_gF&cvM%bZoH%!>VEqIv4r=s@mu8 zUm1efa_nRriuEE1=5#KcN!`p0ZlFazhGiUyI7YYJv}#_4cdC@qKlzL)?uiq~XZ*CD zK>h;A9y6PcxRU-6__wccVTRV>85|oz(wJ5#QF4EfB%{^TGw4&6r!)Qnc;i^7vap90 zN3wcq+i*vaG6p{{S~MTH0Jj?D8@H(%JVxMGW}V^TO9#-CRRwsF!$vc#l#qcd*&Lw> zLQwFyT01jz?nP5Tv=ybLUsj|-?5xpKrz`lW&sDF{Z|OIl#!IE9as5)#%w@H9jn0n|_ic{fhG=y$sU$lQcBFJPxh?I-QRbNru zuYHpUrLeOHDaMC-+|(u7#quJdEea>Tp-q2d3d8LpIx=o(r&UgxiPp!tjfizWplN^7 zPSWN;dJ!Ogy6P7v{*|>|5aR{5L6&?%-MfpzlMuqjsfBqayNg_ z&F3mpp+Z{QRExq_^bT)!=PMXA%^VmcTnOxc3)!h~6QU(%m^{G1f9!!><{`#k9w>J) z)_+~f;FF{gtVmxd@oPi=Va7oX;Gb8Jdo=k=nYR66Yn_?z_ka!xm!@G3kabz0*Of2)}bH;F2^G4xR#y_uV#N)622~j!fkmp^NswJYlBVjr^VezS#kuQr4xNF zug34`p^!hD_V*0`G5Vw9W8_0RS6++O~R<@i{XNrZUt^AUf73XLF_O-6f}R)?VDjH z{MzBV9I&Y}q=Jdm^l;RalT2f4UI-NVQi=&{ANDn7%1Rew8Qe4&BIKY!$^r-(|K*Fh(yEo^p^_?zcA?pDObObw? z3p#$%Nsz*{7M2k_v-qPj(a(RL#^B$T^i6t8qxd}YmEL9uHHHSnom{U#Gm?WHdi{*t zeudpL*ik}krpz+9xvWGg91L3s^HfAaRLI55;2CO|{%)xkE`&TXNpG7cB>n{eXrwu{ zv^;OXtu_%kts!lh?8?5cY>zmRURssw z98SATMk&n@Mf+G_=UjCPBPNKgKsR~QA#u*NseC?tXqD|26l}4BHumnbWaiKZ6U=uIj;AH#g`_O*A zB^~h7_i5K zqX`1ao%|2W?`yN8eG3nNn#*FCgMX6V+pcY|uFn&$XhwfxN(j{$*4pa71EF-p)RN|y z-UE47#QHts>F|kZk|EmC-1?)KX}apx$^UG=5S9hEeaI62Rq(y}@GO=kXP3+o`QD)8 zSeg+`i95=ARO)I7n;(ZaK{^Cuy!7iolN4ecC9W;U^-ktAMQqCSGA=RKlm9~*TQqQ@ zs4uD(=IMWXkm;^DG7Jmk8y&h~Y>Ymw%bd*X6jW(EGx+Q$DR02YFXb$q=_lQ(-&pwR zBOk7XKDG^#RRA$(ojZ?Fl^|A^eiZA{dY7Jpd!Lq)66K(>n`b(+iN3}f+j{+_Gt{Uu z#Cs*S-nm-KI5`*IrPqw-JR#d6U@X3|_O-I|>fnEthpl4{xxv7+T`x|jIl9&$;i+Ac zL~F5soldc?#VXc&iY|WY207 zZ$&z8dmxQw!~EczihDv3cKS>PID5;1e~o|YcpUdcyu)*VXuCyf9gR%L;zI7t@{cBth46NnMZriG3AkJajS5t(~D{|+vx)xI{hoka)YJe_PHkN=lT2{i{R?y+;c7X3H7Y8BDa@_HE1m5cEq&si8V5!DwpKLfDrnOL$}&>47s_e5EB2uDJF2JV z3k#-Vb;C7}bma%%P1}sPjz?8f0J9Hzy+R=OEBtvla#iPx{uzI(pQ)PA_%@VVW$3w| z2H=<0D0@S%sb?Ae0~4@k72HoAilV=QVEuoc4g@uOy|^&%@ZRM`;b&_!r+FG;o=0mi z#uYP=lv7#Ar@I5;TEYnbJ;zLVj*PLRHK3ps*l}&*&ozZFq^NgqoEF0gyv@MEc-i*S zlOJ*Nh}@spm1Jp?J$@*6MOpRvR~UxP^mc;Q8qM`JOp&NPwi?&X$iq8v&zQSF&D8Nn z-zMv|rx_W)vx*aYOZIo~j63C)TauZn9_C3_1~@#>G}``l7u{PmhP-CMAAW|K-bF7d zyxs^RF8#Z2-t(>I?o^mFO=S>!GykWS2_Fdl2*nL2&Gwrlpl`INj4n4bP_VJt#PkYD zk_7G{{v++t{d25siKWQ;Q-jfW&_g`5%SVMSWSGvs<31P>!3{Y5(KNai-jjcc@}yao z(D8*mTL+~)lKxIFemaOaO?ax_KhFg3zG~@MV4XOR$l5rlAEtKO&q(`Ap9$UxnRCQ5X|E_d7>c9DIdQ(;v&ISwO_3RABdQz<5m#_y&f%q!xOUh@t zOUN5?Ojwrq>AsHUE>|=qS}%W?D9#wv`1Z`cH@e!IPYwS*pjqZD9Q>4dqV7p$#15anihC6*-ivPz>i;_V)&VWiCQcCDAuJukt@o(W`hD z*BL2KlP+Jq z>&Fo1-r-AflvQ0#dM(2v;R2eH^SW~G1asDhG-7#-Y5hF}ClAv9!UO#wr+@#jAWDH> zcIK3&h5(zJHe#caBX=Y{C`S=r6=(KYloqyGRM!Gs_+bu#PIFj!tDTBTdC<9;{Wg*j zL=w;&hxSiDl;So!jlt+qv=b0zA^JKGf0Yb$g7@_&f<5cbC;aiHs4F8^`P>bYvZ+QK zy_lwuG=r_*W+7WdWgxf_JPfE&NLFQc%Zb)(cEQ!7^L;*Ixj|U*C#4QNm63ebSlS;F zy6r)^JJQ5nZ4=d&Icqh-`wI@%rj^12FLl3IN4TY0!u+JPB80p}9cd@_Xco`I7`9V( zb40DU2c<{UnUZu@%vq}xYB=1*k7~8Bk2rpSTqo{-+mzNpwn4-0s#C_09>da+70w6_ z95vOL%~KK4J?rmwf~P)u43m!bU(KkR#Y_}ce^9K$*OPb$6WO=x{1Z7Pwu7IYq_=*B zUDgJ3;>F6G(m0a4F1%Wm6<lq}89j-N-PfG;-Uj`k9QCm!B_$CwvujBmdf_4V z**I!gCg;FopLvi``P|!Lpy@XJZz@J9R{-X%=u)J3CXEzp+Og%BsqLeGbQHumzO#@URH$x z`z7LceG@8yogoOu(W;*o`p?qGLrl@+pTpOFzMGNy^FRc6F2%D=ppHsb{P`9~A8K>4vlssO$wC}}Qwtzo= zebm3E(~qfl43`^LY&*yZ&y+5!*Z)jni+^I7#L+={4=jNSjfePY9v;Z+<>l3GRnKx! zcU?kkP3mLI@`)|HsErLUP+dX=tBXBFT@JnCNw%k&FK@rGZoRez#(()_;eP+gIB^SS zlw*ayAIEdi9IdbZ1A++{J!lnOE?i=z{H{wfrP4cB4R=PZ7gKRBqj@ zw1uPmVAF8xM)9*N>2kzv-tX>9k_Z=g&`mpQ$1lMBf(-B30rC> zcp~Q{O-1$PJZNq!J&z*uY5RQQlAbpHFnRa1N}#N#5W_6fn#4{c;1or%&Rpmdq-}~_ zTf_~A|0gr+OGToj%HJlNs2zL|L3j8l$F5c}XZ4P8I$htM9zJa!C+$Sggvl(F=S1b< zlXd}Op1P~@D53Cy?mqBmshYU%4o(3jr&G(gSChG(nRGSxnfqehNENEN@k$L*W>%rn z;;^t{-$Y$nRi_h&aj)Ep$m{2t)Saa(Zlw!$u;a>w?V)uW!|#sYY{U~F$F9)Ki3q&e z6dR_7-%DM9XFbod=kq$+BQ#DeoY*o8#Dm%*2)f^3%(|w;YmiwVh}FYMLws6#x`fNnu)B%xRm8}a-SjS!KXM}#9&(p zX??M@HGXxVxuuTWnVkk5iF{U#`oS;r+AL&1+BMpk{Jnwk$bA|kWMH6d&tY`Ci+I*p z*S`F=1XIgK-d~k+9^`FUD3$q>^I}l_>>rz|H)Y#J%4Dlcj-AI_5T|9e(}7VBHORw>IqK_0gL9=x&4X zF257$N8*>}qY~7g<{@MMIzCqqOk_g%U+|5_nSBQKvpLw0 zS{|v$w>G6ZUX}7drN=JpI+4!1U!*r%$P~G@ha?jp>X;zh8O*PIT1xd}e1Wb%2%~3G z9%SP7$P}?PaoM95I!+LfB28gf!j!pB6&xKBW1i=ulMGgceS@fXhF~uhgM_+-zHk#^ zTAjjDV~YP_*9z#Up$PvG&`m7$Dt$~;!>_cBrOXv`1gGe~U-PVr<#uc7PSuyb9hl{E5BK7V9EgsGyJ6K=SFe)JGJ3owK49jUWln!) z!xwa%=kDE~Gdcb3evv5Z=+L^@|B*2u^ftnOq>KUD=Ko7r6407ZA9unnC80k6^8wfo zzh$q+tvuG(Xam=5^6vb{3@XN5`9_WKZ00?4v+C4!R$rv5c!WxKB31V{YMO7 zF%z);Yzu|UPmJq}{|wWZci&QNVKm^hIM zV4!3xJZ@*Wtwx4pPQfN3;oT<*nN1fcI2VL1=YXo9?Zw;2>HGM5&uIC9p3h}7J~Ox4 zKPvsnU;GIu>+Vplq&WytsbJqJ^FY%6m>)%!uODWhM&8imUuB^CBTS@nI0r*)%(#Lr zWV1|#CYOdR=q!&}xVbW=awQA1w8oG3{J6T2;NR%b)nNPN`FJ^L-`@iQ93>cJim=Uz z(4{5oaZ%%f9=AfKh zE4Dt+mV7mzDa*z*Y?)xrr5Bf%zkxEDpyO5o^k3c`$Q(P3X_^$P_MbV?HFPKN)~gYD z(6`5EsKV$fF*(y#LO5(_WC9cXIgrH$Qd{s>+%-A4sJxM&RHj^8_x;3>MsJ4;l(98b zRPnGep-vO2P$)m-q=lf36)2Z07tPYmN`50!q2pn}Mi`u^v^F>MSl>R7#(<<$ZuCDr zfU**#FWH)AvZL&Z>4!tFea*LyXy>8?h$8_c5r|0MVtLF(K%R&1L{zD^2-~A&Dol1} z*hqy>{G*O_i3+bVarsn*QXf;U_a#V67A(?x(WD?M^C!k58;Frsa)%6W_(gU34IQ-*v~DRi;;>QX z6oOu7WZ)6EWd-8EXN4`<=y7>sEiBu5lRM3L5+_CW%1NaMYeqyG8_4zuj_iD>)Tv=>#V>WopQs4o9ze{;6y)jjI2%o* zUtF~x2>q-zQ=wa>;o&oYumzEn*aC-iq+y7Tqo3S=)lL?%I=3qz4p>vwlvRs&zl*gZ z{WEoeBp_d*!djYK4_(mOC*qS~kAZiQ>fPBiR6X-s82m{Ce*&D!&fc5_Df=I4FF`!< zbllBYUNxtKC_hbAfpjUkLWSL+7@J+pRLKV=khxn(9O4@Znr1WFBj>_Sx>Uy zNA$cmLwnC7OrAM)ypP`dj|qi18U4!i-5a)0c<{tGj&mDUeE=ywBAb-(6ojOO!NAjT z;F+<&&r|QANF_~}VbjCq8xz7oMJHG;;EeQ0dUP<+OpK)s_m?vgDp3VyD|zU3hNvVQ zB8{q6D9bBy!55h6Lz9b(q!4^&d#Cd^0gP2vyi!dzH`U04{@7oL^p>S=y*JK2TZ2@=)R<{>|f5$`f0Kt+q?yixkmr8|=cNZNdO;=HE87r)CBZ zVns8ZfRsZ(s)n&ploWhXm~54rNs>}~;5k|Oxj&h}f#JDA%r(FPc{aHur~F1lNA$Gk zEIB1qxNCh00bTdFkl5GbpAhWv23qUO}bxzv-K%b>NH;tCh znz+we6%h;i)bVYEZm*4_&z7paSVZ*lJ`m88hNS5Nw0O|V*byK^3q^8+q`MTUv~6Iz z0^7gtM@z$|8 zK`f!diNfNQOoF=ywoouUH(90(7%JL?aE=}7#r>B{nDJ6%naZuwwH2|HB}xk_?CmpQ z;@hMcDi>D#;216!8OQ_(beH^7|Cc=y7DI|G1MV3l{Gl`*9WPm=i3z_;q6b%`NdgH6 zQzQ0**}TLzmT}lSQIKG)3!0uMk+kUPEBlkarOPd^$ghNG1i+ zwBU42sfsk;-}CoHV(GZ#(qPQdLIBLQExn~qiYh8m@taOJx_X9_#wjKzN=0>o@kKU3--ajraxYx}>gAU2ay`L9 z99b@jwuSzXi8S`i@dccrP3g}Dtw%A-UR8=HhB1k;eXJQ#rNmdaz3A~TE?Xm+5@X*Z z$u^(hJ)Hs!;)F*;rA$19ftHvGM1$4{MJOFg0GdtskG+fbUQwd+?DffTO>ic7aE^uV z;a}Zh?pz5pLfIVN{*l~S^06wuxM+);JoaEj*p?m4(=(+X+PiGlG4TUe?wvJ?JEA({ zh@slhapq%jD5JFpo9r|WEtbP>-iI@jgdr!9OBDBjB&Bq<@Pp|nYk&*=C@Mf~ETRt; za7#i$6Rv6}E!k>x=Zlxjklu)!r#F?&bi>TNZP6+Z=f?_`m}n6Wl~y}J+@D9}t08DA7WOT2OK@TmA1 zCl@Fk>M$uGM(`>?MLi$*sif`3!Z(e=v^fiDge`kbfE6Ci2+;GejfaBLnG|02G_XnIWp z)P-(9%@5}%G7_tgjWynul6`E{mXPq#c)F+;AZ?pW1q@YD8fj{zVX6zK!j7dpJhUUa z+c5YF6#6kuhvYW%FySL3EyQnI-2dKdN!UNQYFDi&?=9C3>WlSzFdDh%(DSu zOO``Lk;1}j&<)-ehEL+G^3)hpU^ilYk_b~AUSO2Sy?P4r+nPCbY4k2YwlG5ujiL<> zD`Qg7v~;YsbZiYqacTAAEEgMbow z62Jw?w*_4i$VdlA3FGf=(uA3UbL}A5K*FHLDGSHdM<|4{mz1Vszbf$<=OUc@;m zYuCBrKqnYLM`J30?y$}o=vTiWcBF66N#Ubx`H`4nhAJ_$aq-`hQZdEI2sBOrP z*%><%J%e7=otbg{nr|3$b!X++UtH@Q>Gz^{e9s5n#>`cE@cSMkSn=dVZ5HMt_%K)^ z5mlaBndomDi!|)J!XYNO6&9oo7yrqHLlpbzsd^#`TV8HhiWYAeSb>U*BF~S{fy0&W ztf%Z~y8gqzY3fmEPN9Me#dQDFMq1kGPcZ>EKR>9(SkWlYPP(NQ#?5a2s0v=Axh{#S6moZb6+vA4@^B zf_!A`#;xv|;Hb1Tc`QP6pmDk7!@zNp7E)J*;e1fcawOKF&;3W{)EVlPU)sUn~vf>FOr-By$*rExZJWYNH(fwDlhDAn; zIkjP_UiHS17F(@{<2e;s>)O-F0pIkzuRqS(*(s?zE)qdbtCm*y?R|vdB!Vl%ODDRo zeFnDb0H8*R={VS^*frnN{N==wRCWe7hp-!|UIi7)LfRl5^ir`t0^{_L655GHQBGZq zVg}kfIUBIMucp?)8%p60D*N#(qq(FAnl`K=DF{B?5qhDoK+-p8`HY{ZT7E)j$hVXn z6%^1aiEv1y1pJUQCgCO^TWEZvIHn1nLcVE|f?DJ}>jQw{A0l{EY!Lmxx2OzJq#_*b z4x7kq7O91xLv2YK7)u~3SO;QhAwy&a#w^{kWw8R@x;N0G>}4Z^N$Yg;X>7f9`yYe_ zgaq&`DAGG)?_g8)(_@a>5P*bBBw`aF*j4MMcMu=W0V9|Jwje>05B?j}{b+e|u`NRc zM@15>UUzk5V4{Wz6^+Hc-m01m(S9g$VVE+VmJJ9wl>Z}j2SLmcONr#C*t)-bk(o}w zAUpcGCWWbq?(V{zO0Ij59i~O!jDPp4<9>d2hEudJnjMnJlSC+zqRlDtxYfQ3yAb{E z_el5v42&#>vO>bxPq30ec`#x?`T56tE#6ZEf&vTOn*+^* z5(;98h805ng-C^n0653Kh#xeuo0PuH-F?_>D<^S&uL}( z_7j~SWI9WiNSL6@8)UJ7{;3wZVP^8#SOrc73uO!yE5V?eRmBQ=Q5f%yR9=)zfhoBT z=5Zk$u3Ia}5@-Y`!g<2L8@u!Xn`-v?AiLsEGvXgE|hjO@&^$BdwGo;Dw-3M`op|?c5axLmEWM z{UFAWj2M_PW<6kZZhj*iQw-_ zr)#$yR*Ur#doVLWzfl-wsV8nX_&_(jEovwMs&u5f<&3y+17*X4w(Gf*qS!fvjnuneLTCk9qDJPF}DM;Doyj;Vzcn1M2apPEQENtY?3w8zXbQMH;fs`FOvz%z@~6Mh5yF5}TZ zn!$fuDrR(!#qCv3Z~Z)~1}a3&XCJL;{{Wdd@4G>z%6(6- zg={Fpk>~r<{D8K;>N5&IB}D#~aYlPB$Re4FQIkr;=j>DLq54Kli=|UNS2>BV z_QtfJEf1$;GI9(--Y#Q~F6u|OV|6uyzO99FE@{72K>F~GyYpSo!7${>1oNzWXD2d@ z()L-os7QC=NwKvHHw%#Lv%0#qAv%sN;$RC~KE8ke%o&(NywAsiTR0(^4#7M6^ zCRiGO$L*NVhGM`Ope%!OmLrJJ07xbbM+mO<)(fyqU@}Dbn|NVEo+65Wy$$hJZ3@-a zdyxscLe27ze?35LSMc=zb7SOdqRBjJ=82w3K057srA?nI+76n8STuydvdxd0j$@x( z(6Z?(8CBc&D2}Kid^>mg{c)!E1;ipjXdqPhgcz$LWIb%$Hux#eCBNaFN>yeFu<$^+ z)1oqiK;*rD{wx3iGrTcN(m@u~#VuN0)oCHuTm}bz%87;inbcp>(w{t9UiV#Qv=vD| zXN~B#)#SQ#$ASblgJO_*T(FEnw4d3`1a5gGoD-WPN3D|>%l~8+VaUeuppK^QzO2M< zd*2zFTtpNbsE`tPvrF29kw1O=EUzI-1yxfJQg9#+W}Qy(<~uc$GjkUV-YXAf8_P4e-a+T>=gp76qa@^%-Ov2syAaZDddmm0*xg(YOB^ zOlWGBLrzrYclon&NusKC0++Bdf7@Nf*O$JFv+$`P)xp1xgp#(`6FAc!I1FWGnC2;Q z*ZOaJ&mn|a`pqB9l!lVwXWt5!g7;6q6R2ARZv->WRAz)bY9LsLI-*=W?Z6Tuy9hx3 z5m*nVqyg<&0_22v+g=F}M{Anie#aIamF<3Q>PQ~)O?bV;#`Un-`0l7ds zfLjvOdT{Ol0CeiIY~VH_w1!cvlP|N^{X?6sfDzQs@5=xMR=7qEl{g+WtHh=G&0IDg z#Y3zRi^U&#vyg#{*R`@?w;q9H0 zieK^OD7S!C$`N#mJF|Dub^Uo;pSCsVo)b9bNwwbXk;^g&I^CVzY?booC zXqTBs+j)q2e!og1DPTNM3kxj(89YH{4 zP^-)i+#}V`#(_!w$Bz?;HQDEp>vb?CUoiw#3Ch$@R0&*{P(~UE62zb3q*5kAB}InQ zc(c_xQQCB|nA&s>q`*0~LY>cVE{(0@&fLtUbK&aFvq_qUe+Zv5-~@xIrC9gqK{U2P zfrA6V-Bp@pH-xf9Fq!l<(*8ESxfmQG5J9wAU0E9zwW+zKoeeUEI^wmdNt_ILfR!u*(bWfT8QM1XswqR+YG13EF0YS}4}Un65ChAC1H zmaHgJdS3wz1)_}~KK%2R2Ho8Xgg>%CI(dQ=LA+P`tq?j>>xDq=yC$PNa1JfRM+n*x zX_MifOq2K2L@Q6jV%+X?EJ;B#KNDOGTb^C=>Y4cQCry$OwAlhMF5D71BerCwu_m+4 zOJ0nE4>J|h9t|+ZHV}s|Owc*$Y@>V$Qp}DMAkjrdg}GXju*}eO3b3~TN%&MvLmf%g zn#Tq12hEJ<*?(4A&a z^S#^CQ)Xg{3duocOK2^J1vUh32F{1GU_O%l-M93|__Y7h=PlGKc?xqAlJE=u)8``M zd<-P8928w8jKG8`5}dC;D68I}GUZI8+}dy)wN#m2wAPx*7oFTYdnu@(@p{63MYg#= zT=`4T4RH@sKpI}!XBYwOofxF#PK0onCQJqqp_rnSwU}@T z$rbIO)Zj$`k`A`c6|&)w{2;B|b^>8j{SeeNIYOZzhg12D;+k5T9cnlVRmU0O+F1>;&7VF6u-hr(SqLcTY1--eZ<8UsMn&ECt>_1+4b79!dboKw%jhSq-{SNxi~CUEM@;XqfI>DuU?eLuqPT^@KfI zmc&_2ot&nlifUR%&x6rWRjkj!y8_mN*^8M>ocR1MEtk~s`x0UEC=DXmA8C6kT+GjF zXOCoJ=*@&6C2Azig4H0J8F3l9< z24ao}?KJrsf{N)gRH0N_z`_*Cc$`P3qLC*H8rKOgm z4pcJ;(P;EAh$2xEIKFp4T76834I37OPL)vR4dea`lVS^H{jWX8Tm(cq&^~Z+#C9{C z&2$tdBs4L~hB{*rWfqfpe+o%q+fhoBxnj(W1qiWK?(i9^+8^hPLe>bbmf%LfTCJ?C z{e$+p;^XKi!Ips5wJNKYX1~+Th)cu9Ir9S~*z)J+$g70_%20kuf!JQ89%`yo!*O)stUT~`r0YLwoGmd{(B)pXdpcDwy z6A9ErC&kMPb3&GU_$Hy<;Q8WpU%E4q=}M=u5fV`uFsWA{3Dgj|51Cy z_(%tFyB6qfL?uu$;)vbHiK@1Pl~)}!Y!O342>_1R{5}`R? zXwOtrHUy`+5a(f7O>BdW){;23+n%E^TNN3E3uF<*L-~XoT6;pCgE@6l75c!%>Ix~i zq_m93wga=d52slY3W)_*&hDM-EiF*m?Sk+>eK6P(_1R zn=e`zfO;b-6i^7ERd^+2z|`@&Lk> z5COQ9Rdkv5s4}9A4j4nQybTZypabm+KxAzfK$5~N$Dgxg5|n=aHu%Ma2qdt7gi^r! z>mm{U%6hG;x7Rv+GN*&SQ0t(!6H3LS1eKclF`lOq{WZ39bU`x|LdxR*t64~My!3=P zMGpyDn?eIsm@XkS;n1~i9?NM9;Juzz9pQefSZm4AQJFz%LN*=_$G)GocgM+7Es!YWm6KsrKW? zmeH93p|;f(E!Clh7}r8SV>a+67$*%t0q);_YDIno6R+$^)N*O(5j{|0Rs6=-Zf^72 z7Atc^b9em_X^F3I1uBo(w}O)WFg>XM%ARDR4QRp)0z+0&eXU4MfZ%@Q+bMmiUU?j> z*;|z^fCW#zy}`R)}lsQeO(xjWAXv5_IO64njiM{S5@GL{)zS7&3 zbtR4~MbQ3I;z(QZ4`5M&4%uPg4~O;^Lxcfc3r|Fo15G_jp%Zrf)8?w0ZOomG;<-as z_uC)ZACky5-uWk8-69R>yq*8{6a3lv<&S#EhJ7_CkF2Fys&)K~Iz0D;V;zSYzI|0s z;jGjDPXty6l)*%FNcT4gmkZx%D_Vr1vG)Nj4mBA*LeSUei+0oLm!bTV0#74)K4o;R-scioZUj|w(Wa|S8_^Ql zLWfA5_Tqj@>A~rVl{a<3C#*aMx5G`LPT)a6-<<79V;PeBU9(b)2t<60m_8|&$P7VO znrh3kS1fC<+CBlMPV%noP@^MYOvlgRc4@Bto#oJxbdjQ9#(hhx&n6G5Re>a}vZa@3 zUZFl3sz0E+*fB>K-w4CDEYw-{0%jzbC#9grfRqflUAeBJ!+K;K>CYfe#%m-dTKznnB~E#I*>E zI4+jLtIV>&SN3z*#^p~M#(uZiw3ElRv`aEFGAXEz2mjE&Oe5fO1Pgz9k{3NizX{$+ zn783VT5%lKJ}=ffdEsIsD!7IHZMQN7;t?95Xd3wZ`*LB(OVd}B%29Z(bh2Zw8f9YS z)^v}Ui3ySq@zE3jArFMCCF#xvz{ zcH;Ne8Za1q>;UX=KXgfYq;_G%Tc0sc; ze<2=2z>Y{b&U-@Rm4CzarGTfv0#EFU+8Vz8eE(i$$}#|J5zILD4MwIme7X~*8-aIl z_lXKM6GuE(Dc#C^Ly(RPd!-JDKhzO>WqEbmf@PLJbM;I&4VOT-Nc()=Hc+=jo%kxYl5Y69Ik^6b*S9Y(RrU zk@X4?IfQ`W2h=1sVkZfB*Zd3@FRy~*ML8_Or9J|d;l)S^J204vA@>gm=Dgk=n<2BQ zz8*nBX1o&Dw{#+0xj(}XcIz*yB*~ScWBCxs2gn*Ak2)Z|8BeI1S!F8sg-1O+^|aC7K!tgEl2q)-Z!XhO%O@ zOB~1L3Pi=H?-vwKf}MGiH>~&@!6Cos5yiv8i$#CkfkQEWYS|`@S!ry8ZYNR|z7|z+_xcG6j;sI*2L}5~__y5` z1_&h(0GKbrH}@SsSL|b0QYFKV_9X_Ql;vS5C235f6S`Zq2bG(Y6Byq{xHa{R8B>?X zD|&)>O95Vdk&Z~dpuslQbh)MNIFC%bEJvZm@~P?538KI=;%;?eF_8@sD?dqKYX3Jk z^P6boP``8eQ6kPc@wKY7w55_6x0}tyO~Xbq$vKK1Y)kjPFPKN#961eD<`KfHF@2!H za96||Xjn9^Xrih9l=t4Wk+>!uA)Zx2L)4??IV1!5Y#XAB3Ynf3qr%n|{M z2EzCuwVe>e6!?>dVO`i5S>JZDc$m(q61!04)aDe2BLvOSu=oU)8ij+_*#rU=Qj)Yq51+z zGYBZ41$`(@*@+OIt-6WQmVvM=e5BfiQ=I)r#_%z#P1c!VYedg>Kb9`r1wAUSthQ|x zycy-}{IJIF)dy&EbTjovvv(z$40@UQ}gL<@BDP>J0O7~m-k8l~x!yF&4!~`{=z=PSz zsVz|Sd6V%yvI`Oz7; zXAP{;5amvq62>*Su-sFKD_7sBooW$@jW-Ydqo;Zi|Ai0XV>lLRcS%+9e2cegaRBan zB5wiTa3EAXx7!IuKzMP`Uql>nqj1o`pwE`PG!pcDc+WDc>{eeaS$I)7F}9HTM4Gu- zjVAf9e98Cn-|kUCnnJNiw1jhwAnko(c^G>}1S>t@Uto7I-8t%Vnnbnf>oeE2Fr3sb zF1}hf*{5}BeGN;tG#ypA24(^tC_UT1&<{Fa#0jnYV)W{U<7Vkru#SFLkw$@j85g@m zdUpdZ<@bUOp+5!X3k0`8kN=Eyy|v~G7s;(6L5=)6lr36zB_;i*$G?f9df9u3@QTP= zr7J|T@@;*@Kj9SZnHzi@T!~Se2hlDL_RzbDNROos`O=EcqeSzCPhyWfyQ_3LN!xg{ z$+qfNxrkg}|wEOk-S%{+A{}XsN%%RqprLYHmA@;veicFs}9D!Xc;+jRiAeC_>!v z7`pzbT||2_Iyg=@ZB(k+iQ2rHZo%Y)^D5RHAu!pktY4-66buQ|4uAOqg5D5z>!0WG zxpSTDX!KQKaG*=G7936DDecNWm=s_;Vd0#S+K1GQ3pXulRk9HxhnKy;$^%i2@i}bWNfwRK34Q zUP@Sd+TkH0_e1l@S$tEGpe>JoD-%&L%Rh@cx?k`oSx!2JI=GQ=E*ia?KcX#i4$i*Y zM|%H1jvIv08g9s%?JeeIH`A*4w;~jD4urJ=uO$-zM>7d$`&wifTKI3?!Q*6UY|K+} z(b9fe?O4|?dba7Mche1^LZj@Z-T8y#9aPyeuzT9$ZcVsHv@?_e2o9Di#|_~OzKDym zpVtsI5<=5TyZM%o;*ncCq;cmFaPK@>(o7C1UwgmEtjNmvzu86D*fw&vCcckItwAU&>%4^(yUyeR*>IzAqnwX zmm+W3apsg@51&;&$W9#;aZ?i6PO(ZqRycD9M-XE$_NJ%Ah06saw2o|ml0(WKYyk%b zI{2cX4nU@64DIeQ+N_4D((zHmtysjJZNy$8;g@iQm@zupKJGc9N zE+gSW3L?w7xg=BUf67LlH{jhznT?vOaz8k)=9x}vB^PXfa%dbv;a+&$_IQPOvEmig z)>S_E8nmVoSicVW##23VelVoyKsiv24_>tU z4NJwyn<}GpFLN66CEb z90#&qENJSaU(h8&1Y8SrX5nb$3FNBIm$ABRx6jSoCFj? zc?w^0Ad$(%GJtz+m!&BwWmG_aPVFH)x{WI-97GSQyBvIJwFt%K9laH zs?)}+?f>ASh%^gC8JOCps&_g`2YXB|f~fX~h}O|hUheMhS}N>{;{U?s|J1Jj+y1qj zwLBL&+qa)Tgl#Kr;K58Y?x7!+L$)B$5IOpq6>mkSX9P_yO zQablGzB+KWPrk$m(YIX83`GeGDFuKGF$KnHB)PM3Q4^#1#g7uC^MfgrZjF+FhD$G- zzZkZOginArBn7R(wuU0_lrt)?B2ZIu$Jl#MyDN_(sF+=Vs`eMsG!KJ6$aD9?Kecbi z-tER$jDTiKN4M)uS$uzKSz*g*g`MQ?-wN!|=j9cQ2%hDQ&ZJ*LGWtZe@s5o>f9jNY z?Z1UYYY?uxlODLB+mnvzaJ9o09JukaB>oSFKzP45ix*WPcv852IBVV3m4wOv>~;Qs z#-(5<2ClM9_awS>BAXd%$hk4%;s4ui9T0n)c)b%bg6dcPKY4iF;Au&Bh5d&PyB#a@ z&^YDoQW-DoPj(ud4Ww|C=j@P!&aWzn6C(*fY{dn~Ifcc?adY9CrZSj+;*8w`pEl&n ztPotl<{DPhk+e_%416A+3q1xw1X7THYod;(rSw`w4yzNol>hepy@-iHFL_kp{bv#u zrI$I)hBhEQo6q>~mSg!ikVJUBeO|Xcrk-|P0umJFD(90z8=2*Apoj2nTWyH2IuhTBbIJjYo;&NJ?!TH$ zLr4U?lIq~-Ve&k4PcnMdX0ZpomcYTecB~jVQl>9bJ+W5xGD+p8egdG!=r1H`2TAXe z;zl}}PDBB;X9(+wR7ZzJOVH?l6~-fzoeIMuAx)3P$SJTmlLk|iFi!`*gSD|h9O(Ig znDJnZpf?g4Iahy?76 z0GyqGaA@EqxC=zXyQk2^W?USbr73?qZEXg?Je5lUS$DWo z{b$?D2sn`YR*qisl&T@S**<9@FnVXy)4rI>Of-P`!$tQDi63s5b| z#9RyqDn7%Ge*z8*7_ziA*D{~4jkU}Vyx8aYWp@M^x1>jb5naE3SIrT{Sl}a;R=9|` z%gzN8!~aa)&{355XAdIaQ+YA_-i-e0VIOgSmYk~~plnGVf5NV4rN8veg1bzGl0zw& zlDByTJncH~)wW`Ep^pE$`9~)!$%O;`Z*RoC%zk7ixHo?|j5~+K-(>4$o6nyLcrgL1 z3FAxfa3(pbj6!995ohOsyae>SUI;osYvMpj2XeeQi`N@<^vcmI!ziyY>8ht_x*s$I z6LFiB&=m>?Wm=V_A@~#e#<+)OmbR2fv&JIsf)~F)4j(EKmG+j$jpu>m!NFDjm(4cs z-w=z*dr**)n*b2A$IY%Ka6&X$Nm2AHO$N=>F-+kWyRtvZSwIL3#JO1K#T0T2ZR@wW+8zBJiMR?M zGL;M$ay;&T{hP5Ks71}BdAqgjRa#13!mO~Kl`-Et6QhoGo6SwGxlwo-Z8wlcRLp7lG5HGvQ}u}ZmBboZqn_9})aNDC1tA7tj|&rF-_2S5tmVqECC zc~8)${nUH(uCObv{=|ni!Aq8|Xzt96P5w^d3+MBZ`rK%@Jj6v^ziW^ zntt4u#C8iMK#1)SwIu+#L;#4F(A4R%x10iw+I-g_YFx zZ*wW0|9fzgOam{LckGNFTXEFC+#~)vMxh-SdxSkb z(Imjp%?siKFTd2-xOloJbe(_M_b{yw6TsASlnz@IN;P2 z6+#H%E6FGd%i3YJFaoK)&?Ji`s_WUdWLa*0yIGcMy8YmFZSA9ZLG%A;H^Lk8J$p5O zzblW_n>5+=ds0CpEB()VXzn;TIIx8i%~xht^mK3Kj}(*@?V1@==8;5RUW{K})bi?R zDjyN^YVwkNMn|$Ee)G6|3&Ng%n!D@6?&#!rqHfnLZkMZFPtXqj)4ZVL)+;Js+VutP zh~;P;$Q>2#FGgDe>0ST`B2Wen#lby)VwO~vP$tvx1Wg;kps|QDSnv+>m~MJ*RU02y zUDq2&ubcW3+#vrs1>A6pIZpmVXM%*cgkJknKS^oh%=i8>MmSvUe)GY?Blv*RYZs(8 zMY&&`NO64>C{Mk;H!~!ThNMP$hDgCMbSYAeVw~?6q^J(!2iAS-ZvUh!kLX8#UQY6H z9c^pt7VYUu0vMP0>e%*Lyzr@2_NZ~Q>OoAcXMS=v7qQ2w;xkWK(^^6V@CYH$IC%7o zx)o7mu|--Y85PJwK?K5eP!R2qf&%WDn{SdolbsSg`6YRP$T7_ryWt-3yBr0VRKL|D ztlxfxG1B(sCr%fVC$ASCVF`GD64q8XqejNYUEQZ?W`T*_n>iR_Rb@ZJ-Sw{7>iy>R zQLc8Zd)ir-p9Nl|`gjtOH{7rWxXaSxoM>kA_emmpJtCf(rlLL+N`ALrq$iq0O$m6p z;o;e`{LSH#700^F3iDDSjmE`+H^qL z`36)=#ZL1jIA4xY5TIU-x^m{|=&9e)po!z=zmsJA<)4P4BC8F(Rw?oK%^1IrN#B4K z-;sUbz{}Aem(uj>6FU6eM~Xw1=Le9a9mb7;l!s;&)-r(~hmnwf;nm_1e4i9k&N*IX?s8L}~T54*CE zeNg@GUT};1jmd-#TF3p>EgBF3Aj?4#08cIeG>ycc-lK0QhJ^>ckksZ54ojA-c<`kU z41|7dWtt>+mjU5_466f}IaZTZi5bd(NvDNixHN+v5szo(Ddea$D8te^^>x&Uc~L@F zMD=s)x?0mfO^LeW*ovuplQot5C;y#|CS(M(xcWQ1Z0>1_U2&}4EP6jLlCG9ltJ8#c zi|rg&Mz6Qq{@OSkSZ{@K$E@!jnZ?GT_`oE+s~zptv1_`2`YHPtWhY}-39W0JqFs%< zGp%=ZNN2Rb(&SVaD+nxp2g8NKC?Y}65Lg>NeMEqs!xB|%#MDJjbOrP>MCL;uSn0PR zD*<-RhfFe*v!2}@DDPR8pW$^^RDxS+{Jlp&AB&mA;`y!58Xg&){cK)feDBK9ADqF^ zU$|F@D-l+IRkkH1+}HbDvo2`?`L*98V5}Vw+_(2sul(!Wqyikmou81lf5R1vqI&;C z0iSf{ei~Xcat#0S*f}@xCHXWI*is6BzQ+ro zN{4d*;E!QzIP4Z;C=8n3g2Pp5Q6HZ9QfJGPc{2=uZbv5d$GQ|u!VTMB%Jt_I`jmXT zEPpLNFkonwW~^J7nBHY?{u2+RHNOOU7b9kc|C!}QvH^~hni0B#$CSjh9T@eaje)`z1Vfcw%dB$L^Ee}c8)w4i#3!dJDvC$xUVlu3DV8=qYvo&%10GYK}w8$gwQM<|P zg2sY`jNm>G`E^G(>zV;TJ3=w()= zcJ8AV^M{L)Ca)CO=B-=LS7I-q(_SYe;0#;N;3z>o!$sga6_5htCY}#V*n}XVp<9=K zSrjw?S0rNw7cb(-{(y3GH$tPA?b$tn^13{woF_2zJn*6JrEv+bV7MT5rT^LG*_d1# zH+SVjv#rUce1V2ZpB3Ed7ISq?fO-+O@4kOW_v(Z0PbuUUa~i2l>K-wap}gT?|EN{P z=jWvvXLugk8x)y*K@b?$>}u>hQtah_5fM-|HU7XXc0ctl*0+gYuCcB9*0p(dM?zQp zNYMOUqz8n^1(Ayv8+Oc)B&;t5>l}F2k-;6OHwc34oYw)y51)R*ug|p|03PapU{nJ; z_GJelZkbhMPhs{t%WPPO(Z$zxyHmQ|2sQP|*(Ka;WbqPKQq4$(=vB-`XUxfe`vo<* z@oPtWXMOKf9gf&`+c>z}_jzXR4@QXPAo;3eJZlq9_!qj`)h#bm{brkz2Hk{T(Bl5!=rw3K0(f;610F}r2m0#l9!#5~?)eAP&Q!CeH~_mhOH{oMf(!tP9dvTag?tt`HK`!<@6NK+ZR zkJ@;-`b(Pg(#8|77?~HBVIjmOtHLB(r?|8*Mtv$P!RU@jZ~C* z#6NCtf>Yv!38gzTJ>$FRBV7^AP8Jrk)r%I9r%!|8LRKd>tc^_jpkeI}fmO3zFI0MS zq6{H~Zgay2+J|DUIy$ZZWX;ek2K|}`=HZF^X}m~x?r7lUXS2@ZDBZ5jD`IxOI-`sA z+_5ug<9??Ag*HBk!E&;HPn|e+e7P0wr~Ml$MFf6_sD74mfEB{;*qNDa9s1O&j}r0F zEPOY@7b>jzFZ^R)HJ^3B5~z*2fcts9w#^NX4|3bzxGoit)N-+t$%K>rSmvHR0dSWa zF6@R=5&y1r;{EwGS%S9c#f%un^sL|XVNx_mD`4%60SJk3cOpoCaK1-JN++3$4v@cl zzI7?^;aJP`o8rF&n5GYOZ59ZtRGvT&y4TsiG?*;$i0Y-Fj}8 zy=w*ILBWQ{1n-HMY>&(3z6)3Z$O(L>e{2t0V=tSU8V;Pg2AVTk}W{#M9Gka8BxrP=}~EU0{tj%+$(|*8H_+^tMHOBx)?7#{Yb|v9j3(bGpVM%MVHQxD-5<90T zaVp|b(1FC3ytY- zyMN&}Si?SlP3V=}FUMgKRd@~=F2hBQ3`Zy$)-#qYx8g5yDp&`n8#Px~9*e!T-I4C3 zUcaXunUQ`1uT(@umvt7g-W*F*W4axdlL$`g19d%nXEr;x?FkCs)2fOjcO(1yu38Vi zEC~@sx>g{Q&Cc&`JVgY4TpPNl_#4ms{ZL-3jAvJW-a7F1v30@Id8yb%Xe=4yHPM%! zoba2KPeFW!*JbCz$$y{b`?q%&7O7v4o@4V^e5F_D3IFhiMdTO8r=8|ssNv?7S1Boq z-_L796<4!qpHLJIxy>Pr8e15U189sv=k z?}F5SHdTy!Tj+jXgP=8wG89x)XnwP(HV?y82}s5(ZthDdNH+g9xwi+SQl7lYSmECu zsC=Bcb(467aq$X2rymclcmt>cseHJIHboD6YWBn2R9i}`tDVDr>$k5`XEwKsVt!s3 zi8ZoyMCi8q;$?2lp#bK`pJoa|5v;=syDO%DnH%@lR0@2fcS#nyUmflKmujM-WtNws zVPlMww#7n$eA#CV&n$p7lRChLi3tA7>2EML$t07xYom89IBJ~u$lAFJ!Dq;CuJmgR zi{lw9UHubZ`87nbohY)A9IN5JQ~5LTtt5HCP$p?}a`x>xGGf!NuDDkA{^824^a=BS z8`iZFG(lJ2FGSi7RF7CC#I?De9UibAd{($#jKj#oycBnBnC=&Ed8)s0wOcWqTU7qa zubL9k?CF+_8?e@C$QW5iGvmJX$*Gde(7k3tAVCn8k$+nzAvxiOb-k8ab0ld)huW$5 z%q-=}w_~GS+*D=fqJ@hoVekx?>7E*YCe5I;0*WkyXJ5fh64Sd!F}!=^m39>?Dsm{c zC3|LF?s3juxYUvE)$JY-Jh-yVb%d8vnvDBFq(Oa0N~KCn@MzF!?X2-(@AH17f9RM6cl(8fdU?L1-DHaj;2BkdpCbiau9-MR-AQ< zVNJ5LD|dJLO$zn#GfZcV=Ls@@A|8;~HC|UeFoR2Ix;&lf+AB?I-1*rfqXlji{H||3 z=ws<1xpqjG*(`Id_}=4kKbh18;66Su>3LAHpg-1;9V!Gv0xYc1IOPR-CQ0gdc5nWM zj0wYzBWe2*u2}UA6#C@vnq?pG$ZYfO0Fu`0MYh+&%ze8}5TG|HTpN~udstFf#FOq) z>&p5GyUw73)7?MMFH`Ky2n#z|r4JEm3(Db4G=BP^r)gw0ESvsm(VV2Iy}f$ zFDqOy)qnoWk!m_saJ(ZLXVT@tJ$ZZg8UnAuht9;DEbrYjQ`$;JqugDaJ?yKV&QV0t z^D0MkiWGG(DwH1dC$q+XJ60Hz?_J2l@+CM%^n*s${d(ix)GPaKDZM9;P*Y$bf|0WLValR&4Ztl81%1rQx>rd0nEq zTice+$zJ4sbtL2RqgmgfHS})R5o~s8a+z3ZIM~F8J9~ES=@VGz!d+KYe35eM?Mu6> zYxO?du=4(JprIx!+E1{DU4w6Xd^gsqFNKG9;4oQOAFK~N@kG&L!}eUa=^*(Xor#c0 z6$?k`LCO1ulg8G6=n=yLqxHHelYS4c=NYn$`1{>xe1<&k9a2|P`NFuP+cE^bVC!N3 z#)ncc*~}Qp$?LenSkJE{=FEn>I%LyFvC;l~_6Hzs^!g`O-jiH~K6=qoH^OjIb$wnd zsk~&o!gp)(DWjL5K-%-G7S?RLw0;t@JLYR{FHv1O>W5g zT^X*55yiW(UNYSAMFWgmEcJ9t>gy?zjT9w5$SoRt$9xp195%}-cI9Z`IfmVWLn#Yg zo851djyg=X66&wpmMOUF8Jt8H)h`t5WETZ9Nm1YAMFOylo7!l;cUTiGIIK&R)feSM|- zhi}Lfv|02xH0uYFJ69MD%zi(j-(Ua|JK(3MI1Slpl>#Jf-`NXvho(Mpf6l+e~zSaQ0IRZHFCa@@zt$E#1qBzV3JnQ6At0 z_huW2^>hrv#Uew7l!=W6J>k1goE=`*7PKs>uPWK+M?5Lor$FK~FL3-fIybMQLa0_^ zyzXUi2SF+z(gNeUTxGj60|B_vPOvp{r{F%eP%tCN?Lh5Fp*On`B!wq)O<_@q;!AaZ z2~7z%b1+pVR4iyhD!(gYMKj}NOh@=51V%z`JlJ` zP9@u%sSa!-LPG2On({qs*|rp~y2tr{sYxl9LitWT{Vl`BZ_J7K2;Pehnq_A?Q4xgo>}*Qyc(Hk z;78*q=2>EnHpAYlKz>q-EnOg;F=KUGTPhE0I9-HcScZU`nZ7Ky+Jv!0mBUsSq9aR( znfFx-MpBY~b9<0N(YeRbe;n{wqd{66>B8sh+5`)l&hA=S7vbg+2=z z+Z@3g#yZO|WJ+8_L@cZw$IC!}io?sqPOj=UJ|TAHQJqk#gf%HT1TXNllX(hunS~z| zJT#OHWq951X6zE#g})iCU&-p8aiHVHQFJlNK@N1tEN?0A=xkwlnOjA(KGrn?8`zc%T(Ys$uk{Gk<9N^u ziKBCh`rpwXp0F$M+E-6D83xWjJ%7#imjojTM|01jD|kXM|`7w!o-L^ zK9d%@H)!2fZozO-f@q}ipUEl5RZk(sggnirc%8gogiJA$o@JKJ znQz`w6nj6%y7HaL<3PD$>c*sP7a5BeAlz(6=fcK5>$>MwXz%5GgqUTIl{s0cx!Tnt zy)8ZO{;8b#lM9c3n`mdWtIl8@7Gd#13W^s1se$kzz5f0D3ghyXf{rv>ZuO)5rlhi} zWL_^zz?F+ziKEuE^2euDdfSNKR*sbEtjnLsDGK5#Ia5BIIXkiIV#$bh*2PDGW3hUC zdxpHy0Qevsniv)srs$I?zu9;@lf>)eXga^_pJG`;QuB&`Q4LwA##BDfmsOQKD2jc1 zxyfxLyFj|q{}+$ee)hhEkz>c~QGo);GhXj-DV$SEsoLhi*c^(V>9?!Q3yUY7JV`8X zi(a^hOJ5zBq^N2Tmb8RNF$lX5L8UrvBVQhxh8N0+@Gx)umop}j<@v4iX0;B0oTYwI z-ZeJ1R*L6;UFhv$MDhwYfM*-;d~PX^@A8!H2@)kUWlfSLE>yaDG%s_m;Hh=V%LR=T zuAG_0{&u-Joxy_VSL=Zg!#uEz79+Xz|0$r$1z6#=OGdvd1> zyVC^ay7=x>#Vg(He)1Umw{y|R%1p)zR8?Rx1*lWN;`FPglK1QNIqzQ`yZ1T9w zSFoC>6>6KLJcVvuf`}huk0zLsnmVpTVx#avMI`~f0EbS|1f|56dJgOQF{?;F?+Ixt z0oR;USk^yJhbZ$J5;_Ed_xhbrX*+>ACPuT|jLSWO<0z`C5?ul*T5{)<3ZN-dCBd9L znLq1){8b0IF;%B-f|CR@0+Sj&*C$E-d64yr)k^R3YH@9zKX@?w=H}gIY4o6wAgm-KKAJ|xQZta(6n%Ylbeno%K9PDU`WB8P@OLBhn2QTHY>m+Dqg$m6>8vEg7!6mn%f>Gk7u<;RQr|#CSa5b4==lL zK6~*ZOwLKIK4vi|%k}=O*bcT6)0~{TNxBFXRBBH~$LEktFkuLThX|ECH5o%8Dd5SH z$U$KblNgPS;a8iSELwQq%Di-=#Brs6@%CFuk$ruZ3WBX`rCOQAvGL#*)|AA6J8K`$ zy2$ee*a$=*V-Y)a-L8yy*{IEy<#Pi_KpMb9mN^t^nX76druBH&JzVvE+pD=UK*elN z9@tm)vf>{rrLv}^gw_HH^I`Wdg<1S0^9RkHfk{}9?f`tA&GHw&JXY#qQq>!O$41BJ znq*O^rM>)6eo2q8N+I)&T*!)ItwS%AVS-i4lcN?EbkQ&e6TmyNK)Sj`&05E6D7}Di z5g8GTyEi=TlITO0nS~_VmI&0UsHl-~ZAT1kgx1--{nL8b601x^p){h_qedJHA)hHTrpRZG+te7RaKKnKsqbt(c1#!yKumNq)f8?lEsVc zS`rtOiZZwuDvF_y;m(s;%4;6X>lCVw6Rm^oV_*9;e=Q531}$g?|G9P5 zLp6deV|KZYI3zq{7@!$Ua6Fk2%C8dyP*FUAXB6d|N+ea5D{)*~Zb5m+ddVW!ql5^` zB74m2oH-U278Gojzz_9a!XU(J=)tIw7>f!tSQLY~&9QR2YL!)gW0Kksf$s1y89;eH zoZNXb{Q7+o%x@m9gNr!@jr49OEA#$B949@M7vnxP6>-NSte>XmaOOAWCj`dzc|_b{ z!;(UN`0h?t69?Xlo*fR!ZumU5;DxdC$be%w2msV@`YS zI`Cptg9_k=PGNO_ZT&+l^SWfTu_|_nqk|(0$bSb$XeiShyP!NE$1-~nOISs;z>pWy z!>H#i=rX03m!fT53@Tp4osFa)pP|&Ysq`syp7%mpYYs7zPA#EO5vH2KC8JEt%gMI+ zDRI3xT8469c|kVj(aaQk+(IfJz$C7}X`upn7y~r| zsZh*UA19LJRD^FAN>kr;&s=26DwQ8P{gsp7z!WB*#2w&AjktGj(Lg+fk4xVcpJ=2*9pn(}Qfrvo*( z(on%*sHlz~9x77u#Eiwx7TR>v085qWj8+PRuPjiCXREOdYHaBdLa>&U7HPcD&wNFz zg`#$UbPl~OK(o|!n3g7}>|Gy%2%^M7xv&lJAS`OzlLc5!9FNbTq>e}1)+T5FhzN<= z4uZK!-m9b0Llge|iRLs9=HnCh1p;M22|-lemXy*uw@dzS4=zN6CU1y4IW<0+ z&_w|pE)8y}%wmUbj&t)DDsS0SY9CsEo+dbX#V2`H`b}g4+$5_!;*OTH9849 zhE8ThIWYJHBcFvVW)68V#Y@o<1yEO&)_9U%D?Oer!l#?i*34)}G{Gfp8`m50V^Ber zuYgElt;Yv#Ox_@DC9kMhH)?fNPAzLL+Bar(WRfYX94jgrqf!7Aq@v#LVWYEu?mg<} zGikHDIym$b6_=L7193@O2Heo6-_;e-x#Gd-4<7NgV%%~oEZ@kEGvVKM+$``Q>k*ZX zlO;KI&7ZIv2-*{}Su}3fWky|(q9_gqr%)T`6t>T*COAH>L|!|{8xBjt1(a*UY=h&l zL%wA!fl_Ra3Iz&FDupL7A!EpY2qjdZ#(?~IQXvoaQZxxl^tP_S!4cG~1_U*d*gM)g z(nDvfw8Gi+rl>`%jZt*!5#LA`tH%C(oq#lwbx&q7f4FUaX=8Bz%9zl}iVA0il0gT_ zr+VU8y4$gR4{3q%?Jh;?R~7kgG2sMwGJ;C2CnV(W3XIcJ9tK734p0Gqf?(^_???#_ z$Q!a*;C}D6XWH(dWl55gk;{v2y`zk+?p}1@{?u4Eg^B`Kp`*Sf!k*Y=mUCw=NSnB9 zNnXiXvvz?#i_kkn&}6f>vQP=i8z<$Z3I(!~dZ}M17NkQU$f@5^C=7ZShP;pw!#Szu zS7A2+d}l66Y7!RU&AWD!H4q}nppZx%J}QffP{NIRr0v*(Zi_}l`+Qq_^5GIoA4 zcjmEmwf(!yPJ@IVBT$fhrEqF9DWO@_yKQB2#j^a)W0$+e9(7GI;KA1VbqRq1-L8Hc zF6=k|r^p8@=8$z!6{3FpjMcN^CpU~n_j#$ckAwCkr-TJe){Int6fsc1dN?$5wontt zi>`@_udG(q)oWBe;c@iqi(TklQw34?(`CKwm`{?k_Ko{E``mP zDJ&_A0h!J@X+h!6)*dGf)2WdRp@u++Xp zQZTZ%jHD|oMpty~Hrtf!eV4_Q>C_~|o0q*ZMkt-pMv6)I+@9FIGkJ2KHD~JT&~b%^ zLWYOFGqc&7VwWsM6BW60XSBDk^&N4Fzv{@b%I5a4H#r4=m-yc0U7jo0B-Bs^X##10 zIa>g?vKmR75N=Mc1rfe0)2Lka6kt10o6Y+4#`$aXPXAWhwfW5?j^y#iz< z4GC=|-vv>lJtX53JgbxoLcQ2&?yT`!&e<#+t%b7KJ-A_I#ot!S(3*mTS@E)xSN?w| zThLCVX-MLKqzw&L8wRY)>!hL>)=)uNUSfA>a*Zq*HGE{55K$I%3427<+J|~URe8t8 zSZC|Rsn*F!L;*LTk~F+X7W~|(iH3$D!OVumZg|r*s^*aT{%}E$$bVgR<)G1n20#&% z@o`ii2L>u=$)+Jx2FgbxDO6i>6FzOdptj0~A@JLOl_j5jG6&ElF4C?eY(n{)*Yg(0 z1jKye?D^H4`9s;5ZXP`_2{*=%H)Bg(a^YHO$KExq*=P)VD~2ctVkAj^NZ#;+#Pt}f zZHI?z&r&xAQ=yCnDr>mdWvPeP!?uioR#)HVa*z1F!OMab0U(H0Gbf`C92>xH!@r*ajyH{l8B)%-Q-%DJYdYok&aqWUKm z`N!Al6T-^n@w_ORQL0QVsP=KdM$!=$clMl|YzGWx9Z~8RBGgh5ksO21J z6f@7HkXx*U6VWM2!R0Ugzgu?NELZKJy@^3E>H(nyhXHCgu|!Lb(*{v$GU=MhrmEYI4qHdnJY&pdN8Nv%u_{Y9hqo< z7+yE~RQ`#hvTqohZ3EE8fTVI|oNWLmH_HK`i;-5MG*wV7Fl`e0ibYku>$w;ThD=tf zh&kr=_KQ%ah5_VO>5vawD32x9$*B$a^y6zx6jgb%wKI;BVmKr7hh+%@;YAPuiMA zk3fg2ofS{#U$_uGbfGbfS5uBQ^zEZK(t8~2m%8N673LGdV;q+_pv+v7R42iI$N}zf zF%ein$C(nmfC~k)Hx|EIrm#RPiTqIXDi!kH*>kcfSZRBJJWtD0(@*LWx{^9vV`kq@ z3{d4EO->p6E@c0j+;|pC0WXONxYGURNlY@OB$8r&rAY9!sPfeU8IOR=*wqnjK49IW zXhp!2RY=!?riqF(9`Z+P5P7qId+P|CH-8oLPY-T&+dijJJ46mB9Q-s6flkBBTEgPc zOJt<_YE4NM-^nYukL~0YSMHb1PZJGBu8fM(r-Zh3vN}etQkP&^CUYnbn4D9VY6_K| zwLqE%(hc53MkZqz=*CU_Dmg`sAy!J*;rvK!uhi7Uf>@o`6pEq_*oO0e8j7vGs%clI zXTnUKkffJXij-v6=HuML#@<46dY9|56;)5HWsiY435jvD#UPmu`+Q206RxT57i6DI zFtJv@tVmR2n1~(`;(4Vpa?j+wLBeG7+@yrugqEVzH^zT+i*%2l>}$4A0BMEjU~#P~ zZ;q^0gP}T;Oyo)N>)K9#_~61KD%IvLr)U|9xvl2TmZz0jjtRlZdE^-n-La# z+av6bv&|xaG_5MQgzvk+NYHtvS>+kNSya-s2k_DjRk7}4lZ}`2QUyRv5pZ;7HmqBB zSb~c10PcG4GI)fBh6ccMZ-)pTlHH_8bzQG8dZ?kX6u(B9PZ0VnWrgxCT+PWE0y)nc;pPR}=Z#uzxLPVQuH2nx!p{PX~5=j21xYn{)F$Zcj zNd<4U*FC%*nYPMw{B==_m(QWBsK{sR?Jhi7RQvkaf&K`8clu=C5xh_XkGwaWjU>}> zXsz!Nl%mq@7{0%DX74>jf;o(AYIKx>+aX^t! ze$*8{ZZSM;gTfN{9>pt(3hE+II(*=H3QNmFQ5emIQRzgI@r@QHakKb&s9$jq-gE^+2D0!o1;hdaW-zg>U6#UtL}=uj`0g z>}>9oAvSWcBe~U_g2`0~2%!RX zTdP7DLB?b+WZ{puWwytNKnQ6HbP0h;idh$*&SY>nmiYlPOx_EBz~gFP`Z&#R%uC1! zOM2LU9S#P;1jCed7PI8l zn*>oM0;#D2FwI&bLZLHNh>}87TjY`i3VEo1PAbeMTUwBmv6gvjlq8cZpbBFbEnc!{ zDIFKuQQl%P@Azs3d6nCI+tNMh9Wm~eV^(Dsk|rsEjyOPR!tm|I-#*ikBi8|@>qLw$tiMQf2i;IvU&@CB4Lg36RkXSx{ zh6AL003V53aD>g19$%v{XJMB(TWULx@qLzJhX@T53-o1YrEaMvR0l_FLs>jknr2jn zkx|Jq2{~P6GCPY*%u~+JMhwU2b6D$zc?y!8tETXLC`?tyrcLXF%93&owW0K?qOPi5 z6O1zWW=E|2W6UkAik2+r|eEbr%<{s}cxci9i-C)sUtEs)WbO)ae1)h}-Dw zJSsgdAcE&RvOenmn&VyHqYEC~?<_;Z1+`;&>0RG@)hc-neSBiAv{l6qNtB>Ur$lbD}R3VM6=9)Js?jYRKO!W;0Y;ugy&6XlB&Jws2HEh%_ZiwT4Z4- zN_&mYTuC*_UW&%Dzj0PoD=T}A`M$nK+{zplyI5vX#FoT5;0qdZYxW{6pNH2e za#V1<2@e>V%n}o^PS58XNz;Ij3fkID6k^mHwGE?S;&==rtfS*X2YXb1@bX6%)+MFqm7{*{-@o?+j+$s zS^SqV!n*s`#20o81p)#5)EAOk2an9sgtk&KDuGVCiK$^RD9kK+ZHthYMem~rRQAU> zI9VOZ>g|m>ns&rj7wgD>UcYB1zD*#ky@}VUTXV9PP$=dsfE6fTAOYFh+#bsi)blqY z=mZwUVTg5=1RMk5!GTkpBC~L)Ag?8tg3x&y8Py&=P*N?y<%vcMH^l0cqh@ord(a=Q z&H%I|DrWo3(bzm)bi#vC)-&tMmr_7^`vrQVks~QblKNDVMQ#;;*SZBpX&aiXk;zoN zz#GU>n&BjRcsvJ5t>>C!RCrz_9qU8q2~1l^YWV4haS=O@H^nYjl-E5X%6rf_7YmJ> zv7oxPr0Q0LGayyWY~VsNu7bc-MMcuZGAUoJ$Y!9CAe2b8a^3|71LUi6fij!LpP|g6 zDKvm=^!DQMp+W(FzlUEgXHr0{YkfLY`PfqyFx_%%e$yR6W+{L7j;kH8)_?dYanM~ROkWNE( z!1^AQpj@>BLnzfVoQZWM%DBoZzoB8SQ$X#=ynuX_9lx%BM+6{m4rws)c>9d@6GjX4 za!edn3^XT-V=>qajDiSQ;EP2FjY_t#w8%nv4d2PBIs^bHHEY}=o53Y%QLF6sS*Pl-w6lHKV;8QQVT%}&Cu zu+c6|CvSFtVdKrB>PM#vQbtEpUCRY10}FSx2*o@fvK~vLvIG(uNnuH4iTE2CG?Ka# zk2h*sbKHdLh$Uo6*R-c@A{=37^#$bJ+J*~I-P)58(F@3vH)~U&NUo^htQCgBKN8B_=lO^(JSmY4KZ&1KYA!{ zxzIAH`+T~|6e@!Od&7k!3Kl1}A|yqtoF~N#O-NN@d~1#+sg{op8QtByZc`|Fp)Y_# zDUU9Ht6vw*J3W){RGHK`V3k7DhZ~i*2awsDI4q%rA%cfIIiLa)IdwrQ&~;2pqB69V zRAmZ0johMPhi*gx`}2L^JH$r#b%}t4XNgUFePSEl0&bqb2JUg-2?*1CI3Du8piX zhSAZ|C0J=1j@BepqP7kUE|r26$Os#S0)<6xE*a%oT41=Oo@fL$(uHion<8rJB07_Q z!Vcx2d_}9OT8n18#zi3XxbeO&Yhm@1(`_WSPkHi&y3Hbj26xgI-8=a;BwBNycQs&m`0H zHJn9kRA4GpREc>FB{V8q&}Hj|GD4ifPMVtXiE8W+O9?uCyossM1V_YEr)=A-x8ZA71rb&no*_G+OGb8Eb z?fqr9Nl`I5fC8-+Frk`-AKXb2b77Pafl&0JB%xXOGz8E%z#qhLe~J$~M5IN1%Lz!R z(S!1tdfrf3m{UX_XWsF4rMVma_z5F_(I9_NU}Bl&2pkEtLq^0fiCD^jb;IXdpcn09o zY9$rx13!0z%$aZAUC>Cktxq2Aw~DkYcDElUp%i$m0K&ln{RGeOr|AuKt9XRRXDZ+k z{pKtHHAw8jC3GqfZhG{8YA(gWaS4ckBaROC9ueIO0SWbrFBfm4rDw=X>h+s8Z43`b zLSj*o2}06_p)8rA)siU3O8sz@xPbEVu1!E7$f+RSr1}t%lA@BMd>kdVEq!$=X9)^y z*4ECiBOSeRgynSqOgWG(fL0<})SHE1o#sor3ldBM02_ET>wI~C*S?yD0&nM8uHyV{OXK=h81Zz`^uNi zKddBNwhkHh&s#`V$lzI3@KaCW$#n*(MG*K=8`uVXDm;Kst!HLCE@TU(EmX%vAOYoO zQ6hK^L#*TJvS^q!o)$Fz=;T@_ubz3oCBLn6f!`#zZ;=CkovZR;3l(~lm493$)m2U_};^$zIw>oVSI!_RLJ;TC@~Ec&j?6(fY`$ix8TrZCV*rC zL2rU!nD7LD9#aAqJVwKlHpMPvg$p#5U83sR^2ZufbX%mnZqKt;>9#F#U~LLt|1AaQ zrFu;7Wbv!3q%v6xm5ri6l?%Pu91z5UHAq!ni>gus$fclVj)h9FX3Y$foLp6vCSqMW z0pID1Wo;rvHZV2<^_%Uv37%dAXto5)b~?T@BTP|$_1L=PWi!7g(mj4S&>r*vk-=jq zNbu9R;OPM%z4EaLmXF}D-WZ^3umDdGOQKjLNDW0Vo73ah$@+y_?1c$Id+PeF_DkLT zvgC6`BV}PYFQdJcLR>>NQ|&d8a6gS(`!NtPACvrXnJ5tZyn&;okwkFv|feMpM)~y8==>0C9XY z>tc1)q;b0Y)pe=x!zy7-JBcv8SwevjgbE@&_g2n@Cr=3wzL0Lg2+SyN z2o_uz91e#Ef8#J13>LxRDMnN#fo#q|xwAQZTb|cC3$d{iYv%%IZx_qYHxVKRgJ6uX zpOLM0e=~gIfBNJU^5d3Ep;UY!iF0}CGqQbw&u*LU7foSfpOKHRJ|o}udi?zK(l?#& zcYOQM+}q~%tyRHq?o_ATDIde?vWE-pgqGWW+ps0@?Ac3_4I9cWbZXXPmrtJ&**D_@ zk9J8uBZW^c$(AqwzV5W$`w>|E8sx%v6|udiSIzDJi`KIYbWxaZ@Fy~o7k9VcSm+ubb| zFL(Lwyv^jNTcU3l-6pe187B-7YU5Kk9$%)>Tv0fBoaqzO^5> z*{%GH{Obn0p=)GMVMeW}dfVWBo1y0)e+jET{q*58Lh>yz{*0W5{kBOs)YSPN;}%#` zZgDvrw6CV>@zZm6GY_t%_jG6A3!^VRvM&54dN9WI{`;lX8{9I#<=u&R3kzbeX1KOo$e>$IT z8T~D}@Vg66-`+S(uz7tXviSU^RbaIL`954ZTm^cPT^@1noA*0*>^Xh<%`M|Qa8QGe z&nN*MXZ7#GZ>v9Ze%@O*Fen`RVtVmxi$~i&)qHhs&5eUU74QCVYGV7*kxxf~7qMM? z4nO;Z9y;iFDf!%qwV-eP=Oa#^e?Fbs*>%T1l$uy54j90L<_&E7_nDF9JFcZHN*VKP ze2t}#Ysb4Y67xSJ|5*AyIUw`nou;7fGskj1?BDk9rkeL3U%Am1I}L;924y4`+J${z z>G>1&%B{DN*DQ7$KY6tEK*EsI(2?_QpON4C2EjebIzTJPufZ)YEq?n>e>lGN;Adq1 z+lnhj>%Q`I?M*C<1=UR9Lp2dSl%r|j){{6Z4$-teOau4qv zU;N?S#-&4B!9|(5AH6ud+kDez2zG|`|R1XW&2JmqR&=@ecyW^p)wzI;9pCD zw{P>m2fllo^XcG{w>H7~e{WWuKX=fZUGlmg_mDe~$opqYKD<67zbt)!AmRI%H;1X` zy3aJr-+s(~;`z(Lx$lCi%{P>ry10BO1mif^{66`T88FG;CdVRPXEtBIBzdxG-+s`f zZJ&{nki&J&AAbAz8G$b!eri*2HcgFqgLYGY`SjOS z1?N6qYMc>mJ@d`ae-+~n-w8kfJ%xbB=`mcXR0*YUzymdLW3q<9i+a=zSk)c<2&i%T%sto&&y#7UP8`kHXJh8gN z__xC!od&i&UiEa_hX;oa{lZVZqGywYc|SxBFS@d>dS=_>e;3~``s?a5yDoLci$DJT z@XP3muyb$5cn2~M24;gmTzCA)(t8{6{aA$bcYJ8+Mts%k2kXzz_Id?vk*pnvJv8?5 z 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

7wcT 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%0D^8kIwzSm$5+&RIgTy8N-Q8!9 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�?` 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 diff --git a/htdocs/website/class/website.class.php b/htdocs/website/class/website.class.php index 4218552c9aa..31b10401c8c 100644 --- a/htdocs/website/class/website.class.php +++ b/htdocs/website/class/website.class.php @@ -931,6 +931,10 @@ class Website extends CommonObject $stringtoexport = str_replace('file=logos%2Fthumbs%2F'.$mysoc->logo_small, "file=logos%2Fthumbs%2F__LOGO_SMALL_KEY__", $stringtoexport); $stringtoexport = str_replace('file=logos%2Fthumbs%2F'.$mysoc->logo_mini, "file=logos%2Fthumbs%2F__LOGO_MINI_KEY__", $stringtoexport); $stringtoexport = str_replace('file=logos%2Fthumbs%2F'.$mysoc->logo, "file=logos%2Fthumbs%2F__LOGO_KEY__", $stringtoexport); + + // When we have a link src="image/websiteref/file.png" into html content + $stringtoexport = str_replace('="image/'.$website->ref.'/', '="image/__WEBSITE_KEY__/', $stringtoexport); + $line.= "'".$this->db->escape($stringtoexport)."'"; // Replace \r \n to have record on 1 line $line.= ");"; $line.= "\n"; From f37b8c78c86783ed7e16dbbaa213fdf3cd3cb56b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= Date: Thu, 15 Aug 2019 15:18:09 +0200 Subject: [PATCH 165/228] NEW Add POST /bankaccounts/transfer REST API endpoint. This allow internal transfers between two bankaccounts. --- .../bank/class/api_bankaccounts.class.php | 135 ++++++++++++++++++ 1 file changed, 135 insertions(+) diff --git a/htdocs/compta/bank/class/api_bankaccounts.class.php b/htdocs/compta/bank/class/api_bankaccounts.class.php index 72ba4c82db1..8103d6b0b4f 100644 --- a/htdocs/compta/bank/class/api_bankaccounts.class.php +++ b/htdocs/compta/bank/class/api_bankaccounts.class.php @@ -23,6 +23,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; /** * API class for accounts * + * @property DoliDB db * @access protected * @class DolibarrApiAccess {@requires user,external} */ @@ -166,6 +167,140 @@ class BankAccounts extends DolibarrApi return $account->id; } + /** + * Create an internal wire transfer between two bank accounts + * + * @param int $bankaccount_from_id BankAccount ID to use as the source of the internal wire transfer {@from body}{@required true} + * @param int $bankaccount_to_id BankAccount ID to use as the destination of the internal wire transfer {@from body}{@required true} + * @param string $date Date of the internal wire transfer (UNIX timestamp) {@from body}{@required true}{@type timestamp} + * @param string $description Description of the internal wire transfer {@from body}{@required true} + * @param float $amount Amount to transfer from the source to the destination BankAccount {@from body}{@required true} + * @param float $amount_to Amount to transfer to the destination BankAccount (only when accounts does not share the same currency) {@from body}{@required false} + * + * @url POST /transfer + * + * @return array + * + * @status 201 + * + * @throws 401 Unauthorized: User does not have permission to configure bank accounts + * @throws 422 Unprocessable Entity: Refer to detailed exception message for the cause + */ + public function transfer($bankaccount_from_id = 0, $bankaccount_to_id = 0, $date = null, $description = "", $amount = 0.0, $amount_to = 0.0) + { + if (! DolibarrApiAccess::$user->rights->banque->configurer) { + throw new RestException(401); + } + + if ($bankaccount_from_id === $bankaccount_to_id) { + throw new RestException(422, 'bankaccount_from_id and bankaccount_to_id must be different !'); + } + + require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; + + $accountfrom = new Account($this->db); + $resultAccountFrom = $accountfrom->fetch($bankaccount_from_id); + + if ($resultAccountFrom === 0) { + throw new RestException(404, 'The BankAccount for bankaccount_from_id provided does not exist.'); + } + + $accountto = new Account($this->db); + $resultAccountTo = $accountto->fetch($bankaccount_to_id); + + if ($resultAccountTo === 0) { + throw new RestException(404, 'The BankAccount for bankaccount_to_id provided does not exist.'); + } + + if ($accountto->currency_code == $accountfrom->currency_code) + { + $amount_to = $amount; + } + else + { + if (!$amount_to || empty($amount_to)) + { + throw new RestException(422, 'You must provide amount_to value since bankaccount_from and bankaccount_to does not share the same currency.'); + } + } + + $this->db->begin(); + + $error = 0; + $bank_line_id_from = 0; + $bank_line_id_to = 0; + $result = 0; + $user = DolibarrApiAccess::$user; + + // By default, electronic transfert from bank to bank + $typefrom='PRE'; + $typeto='VIR'; + + if ($accountto->courant == Account::TYPE_CASH || $accountfrom->courant == Account::TYPE_CASH) + { + // This is transfer of change + $typefrom='LIQ'; + $typeto='LIQ'; + } + + /** + * Creating bank line records + */ + + if (!$error) { + $bank_line_id_from = $accountfrom->addline($date, $typefrom, $description, -1*price2num($amount), '', '', $user); + } + if (!($bank_line_id_from > 0)) { + $error++; + } + + if (!$error) { + $bank_line_id_to = $accountto->addline($date, $typeto, $description, price2num($amount_to), '', '', $user); + } + if (!($bank_line_id_to > 0)) { + $error++; + } + + /** + * Creating links between bank line record and its source + */ + + $url = DOL_URL_ROOT.'/compta/bank/line.php?rowid='; + $label = '(banktransfert)'; + $type = 'banktransfert'; + + if (!$error) { + $result = $accountfrom->add_url_line($bank_line_id_from, $bank_line_id_to, $url, $label, $type); + } + if (!($result > 0)) { + $error++; + } + + if (!$error) { + $result = $accountto->add_url_line($bank_line_id_to, $bank_line_id_from, $url, $label, $type); + } + if (!($result > 0)) { + $error++; + } + + if (! $error) + { + $this->db->commit(); + + return array( + 'success' => array( + 'code' => 201, + 'message' => 'Internal wire transfer created successfully.' + ) + ); + } + else + { + $this->db->rollback(); + throw new RestException(500, $accountfrom->error.' '.$accountto->error); + } + } + /** * Update account * From 6edf5494c3aa70dd942c59c977f30c44daf5d783 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= Date: Thu, 15 Aug 2019 15:29:37 +0200 Subject: [PATCH 166/228] Added @throws annotations for possible exceptions --- htdocs/compta/bank/class/api_bankaccounts.class.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/htdocs/compta/bank/class/api_bankaccounts.class.php b/htdocs/compta/bank/class/api_bankaccounts.class.php index 8103d6b0b4f..ba21b6c09c1 100644 --- a/htdocs/compta/bank/class/api_bankaccounts.class.php +++ b/htdocs/compta/bank/class/api_bankaccounts.class.php @@ -184,7 +184,9 @@ class BankAccounts extends DolibarrApi * @status 201 * * @throws 401 Unauthorized: User does not have permission to configure bank accounts + * @throws 404 Not Found: Either the source or the destination bankaccount for the provided id does not exist * @throws 422 Unprocessable Entity: Refer to detailed exception message for the cause + * @throws 500 Internal Server Error: Error(s) returned by the RDBMS */ public function transfer($bankaccount_from_id = 0, $bankaccount_to_id = 0, $date = null, $description = "", $amount = 0.0, $amount_to = 0.0) { @@ -283,7 +285,7 @@ class BankAccounts extends DolibarrApi $error++; } - if (! $error) + if (!$error) { $this->db->commit(); From 08f99b42724cc1e78364bcb352bfd15810102664 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= Date: Thu, 15 Aug 2019 15:39:49 +0200 Subject: [PATCH 167/228] Fix codestyle lessc.class.php should be excluded from ruleset as it is an external lib --- dev/setup/codesniffer/ruleset.xml | 1 + htdocs/core/lib/files.lib.php | 2 +- htdocs/core/lib/website.lib.php | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/dev/setup/codesniffer/ruleset.xml b/dev/setup/codesniffer/ruleset.xml index daf73e5b2a7..89ea98a051b 100644 --- a/dev/setup/codesniffer/ruleset.xml +++ b/dev/setup/codesniffer/ruleset.xml @@ -6,6 +6,7 @@ build/html build/aps documents + htdocs/core/class/lessc.class.php htdocs/custom htdocs/includes htdocs/install/doctemplates/websites diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 79b0badf0ff..a5bbd68a736 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -1911,7 +1911,7 @@ function dol_compress_file($inputfile, $outputfile, $mode = "gz") dol_syslog("Class ZipArchive is set so we zip using ZipArchive to zip into ".$outputfile.' rootPath='.$rootPath); $zip = new ZipArchive; - if ($zip->open($outputfile, ZipArchive::CREATE)!==TRUE) { + if ($zip->open($outputfile, ZipArchive::CREATE)!==true) { $errormsg="Failed to open file ".$outputfile."\n"; dol_syslog("dol_compress_file failure - ".$errormsg, LOG_ERR); return -6; diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 4696e2adc8f..bc1e08353cb 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -33,7 +33,7 @@ * @return boolean True if OK * @see dolWebsiteOutput() for function used to replace content in a web server context */ -function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype='html') +function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype = 'html') { $nbrep = 0; @@ -191,7 +191,7 @@ function dolKeepOnlyPhpCode($str) * @return void * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context. */ -function dolWebsiteOutput($content, $contenttype='html', $containerid='') +function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') { global $db, $langs, $conf, $user; global $dolibarr_main_url_root, $dolibarr_main_data_root; From 107e6be6d93ad7afe729079c64ef7b47fa9c17aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= <613615+jtraulle@users.noreply.github.com> Date: Thu, 15 Aug 2019 15:40:55 +0200 Subject: [PATCH 168/228] Fix code style issue. --- htdocs/core/lib/website.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 716cf891084..456580124d8 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -34,7 +34,7 @@ * @return boolean True if OK * @see dolWebsiteOutput() for function used to replace content in a web server context */ -function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype='html', $containerid='') +function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype = 'html', $containerid = '') { $nbrep = 0; From a66560ee935cf97e3e6cbd82db811da9ffd88685 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= <613615+jtraulle@users.noreply.github.com> Date: Thu, 15 Aug 2019 16:22:02 +0200 Subject: [PATCH 169/228] Update ruleset.xml --- dev/setup/codesniffer/ruleset.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/dev/setup/codesniffer/ruleset.xml b/dev/setup/codesniffer/ruleset.xml index daf73e5b2a7..89ea98a051b 100644 --- a/dev/setup/codesniffer/ruleset.xml +++ b/dev/setup/codesniffer/ruleset.xml @@ -6,6 +6,7 @@ build/html build/aps documents + htdocs/core/class/lessc.class.php htdocs/custom htdocs/includes htdocs/install/doctemplates/websites From fd8cbd9a938ac7e3882fd59392c35de183c3c1cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= <613615+jtraulle@users.noreply.github.com> Date: Thu, 15 Aug 2019 16:23:01 +0200 Subject: [PATCH 170/228] Update files.lib.php --- htdocs/core/lib/files.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 79b0badf0ff..a5bbd68a736 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -1911,7 +1911,7 @@ function dol_compress_file($inputfile, $outputfile, $mode = "gz") dol_syslog("Class ZipArchive is set so we zip using ZipArchive to zip into ".$outputfile.' rootPath='.$rootPath); $zip = new ZipArchive; - if ($zip->open($outputfile, ZipArchive::CREATE)!==TRUE) { + if ($zip->open($outputfile, ZipArchive::CREATE)!==true) { $errormsg="Failed to open file ".$outputfile."\n"; dol_syslog("dol_compress_file failure - ".$errormsg, LOG_ERR); return -6; From 46ceb1168535eb55547aa9d255c82b112283ed04 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 16:58:36 +0200 Subject: [PATCH 171/228] Replace special chars in name of website page --- htdocs/website/index.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/htdocs/website/index.php b/htdocs/website/index.php index d16e8661390..97bcdecc0af 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -3073,7 +3073,10 @@ if ($action == 'editmeta' || $action == 'createcontainer') jQuery("#WEBSITE_TITLE").keyup(function() { if (disableautofillofalias == 0) { - var valnospecial = jQuery("#WEBSITE_TITLE").val().replace(/[^\w]/gi, \'-\').toLowerCase(); + var valnospecial = jQuery("#WEBSITE_TITLE").val(); + valnospecial = valnospecial.replace(/[éèê]/g, \'e\').replace(/[à]/g, \'a\').replace(/[ù]/g, \'u\').replace(/[î]/g, \'i\'); + valnospecial = valnospecial.replace(/[ç]/g, \'c\').replace(/[ö]/g, \'o\'); + valnospecial = valnospecial.replace(/[^\w]/gi, \'-\').toLowerCase(); valnospecial = valnospecial.replace(/\-+/g, \'-\').replace(/\-$/, \'\'); console.log("disableautofillofalias=0 so we replace WEBSITE_TITLE with "+valnospecial); jQuery("#WEBSITE_PAGENAME").val(valnospecial); From b5d72edebc0cdfc74c8948129c06734bd3e251ff Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 18:07:36 +0200 Subject: [PATCH 172/228] Can add more samples of pages. Add an exemple of page with dynamic content. --- htdocs/core/class/html.formwebsite.class.php | 16 +- htdocs/core/lib/website.lib.php | 269 +++++++++--------- htdocs/langs/en_US/website.lang | 5 +- htdocs/website/index.php | 2 +- .../samples/page-sample-corporatehome.html | 15 - .../samples/page-sample-dynamiccontent.html | 44 +++ htdocs/website/samples/page-sample-empty.html | 6 +- 7 files changed, 207 insertions(+), 150 deletions(-) delete mode 100644 htdocs/website/samples/page-sample-corporatehome.html create mode 100644 htdocs/website/samples/page-sample-dynamiccontent.html diff --git a/htdocs/core/class/html.formwebsite.class.php b/htdocs/core/class/html.formwebsite.class.php index 3cefeaef99c..42c3b36025b 100644 --- a/htdocs/core/class/html.formwebsite.class.php +++ b/htdocs/core/class/html.formwebsite.class.php @@ -176,7 +176,21 @@ class FormWebsite $langs->load("admin"); - $arrayofsamples=array('empty'=>'EmptyPage', 'corporatehome'=>'CorporateHomePage'); + $listofsamples = dol_dir_list(DOL_DOCUMENT_ROOT.'/website/samples', 'files', 0, '^page-sample-.*\.html$'); + + $arrayofsamples = array(); + $arrayofsamples['empty']='EmptyPage'; // Always this one first + foreach($listofsamples as $sample) + { + $reg = array(); + if (preg_match('/^page-sample-(.*)\.html$/', $sample['name'], $reg)) + { + $key = $reg[1]; + $labelkey = ucfirst($key); + if ($key == 'empty') $labelkey = 'EmptyPage'; + $arrayofsamples[$key] = $labelkey; + } + } $out = ''; $out .= ''; + print ''; if (! $atleastonepage) { - print ''; + print ''; } else { - print ''; + print ''; } //print ''; - print ''; - print ''; + print ''; + print ''; - print ''; + print ''; print '   '; - print 'ref.'" class="button nobordertransp"'.$disabled.' title="'.dol_escape_htmltag($langs->trans("MediaFiles")).'">'; - //print ''; + print 'ref.'" class="button bordertransp"'.$disabled.' title="'.dol_escape_htmltag($langs->trans("MediaFiles")).'">'; + //print ''; /*print ''.dol_escape_htmltag($langs->trans("MediaFiles")).''; print ''; */ - print 'ref.'" class="button nobordertransp"'.$disabled.' title="'.dol_escape_htmltag($langs->trans("ReplaceWebsiteContent")).'">'; + print 'ref.'" class="button bordertransp"'.$disabled.' title="'.dol_escape_htmltag($langs->trans("ReplaceWebsiteContent")).'">'; } print '

;yi6_w6^xS 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≪|SCn##;XX;i655ZlTc8*x?la0DnK?DUvQIR7^fecWZdxo*`|L2QR~u z1RnO7s5!gX4ey0ACz^Uo$5&C(*utz-g7?U?$+>=qy2RkEJthbuZW6 zEdFJ#{{Yzvrtj?!81V(M{{XB_4xGbPX)G?t;YWxD94ZoLDWkJqVcXABX1_6M@~QXC zyfs4p^4bt(qHTd1y?*lo#S9)3US91{`17#{QU3YG%+Q;t^@(+C%f31BzN|y=9dx z3f1Lv804)17VzjAt<*U)P>GD=fARvg-%3{+$2(;Qx^rBFy#f2WEd_Fdoa5`G%}h?3WO?gB(m2?hI2Zk)>U81qH=0dW;q+#sRLO*xzU- z)-#|!@r4bn-FmuwcMNAhHa;l8-EHO@gh~N@0Q|4SRdehSjazuX%xi%+X3A@LY#Qx| ztHnemHU2dBDef&wLBw`OxSoH@)b;*#&($*fL&3ug)*ydeaf$OU!3P&a3#Z+|T_1Q| z;cjV*aSXu1*?wU{SmVbs#6P?pzC6Ii2=<)79I33lOxk>gNF_@eGE^j}FU3mVhfd*% zO;c@i4YVUrE;Vj3WO`Ri2ck3;0EGo`y+I6Cl-6~7jET{{Z;$;%O+Dxml^kBKJPg zu4C8u4M#S`VhOQ@Qve%j6DqlR&r<=| zb^CuqMant%F_F%OwJ4jhRRkMhp;Pe+0PM}I-9^>vq61KJkp~Yon6=4VdV|#~zaR1v zt{$cNV3}LBfbB1cwK45)L>vumz*WRU!i{(;s-qU{l>l7Vnz%;*tr?^H`pg<(rFMm+ zvMIAKiI%%c|@v7RE`YB@A|{vgsZWdrK_ z)*#QT;8wpE`bNk@P-o%u9nH6ux27%IpS&%xP^=wZNR(~}meQ{C2jM?MLqsj z^HJv#Z0OHt%oRW^CKtr=G$c&SB8q=&gYPS?R5ok8Y>TF~-(I?a(FNGi`HBt~33!XN z02y6PE+#KHXCL9Z7T09=1@<}&DM z;#!Y+xB*ZbhK*c9*)Kn01U@l9CgUU-&D+ckJY#^c>W ziiPBGOpH@x$m_=wIb2Jy8smR{eZq`L6j5iNh*+_CIUCQOrLNfNJmWcx$VACWkG5b` zD5X8>;IalmgP*)6bW++fzt5Nn!V9xU{{Rn%8-&z@XF#$yqz+3y$kjvI{b1@5jOjE6 zvca|S0x_7<{{Rrs?4@hWx-2wI^;@ zyHBPXjm+m>$hk<^{{V?x{{Z22^wK-jJTr{SeG22~-u{|OdWCZx{Y5nrsbFx-6?{V8 zK9^G4yu$5o3?3!kVN1p$UtgG-7>F?b&;!$)!Tc-Y4Y(jTGHqP%a?L*=jbRbt>I(F_ zgH4pv@e&Im(K{4Xa? z!`scv-AW^fen@}Sc8PeWi{p11n2DipOFk>yR|zW)Gsn(my=eOcIpR?IyR#jvRX}nQ z#j1}h#7H1OIkD4STq`;wziys+j!Bjw5H&&e&f`1i=uRFPTdhh)z7&mgA%(F#kYW@v zC(lRBI;Swr5)Du;+H3O_Z#oLJ{{T@GcUpv}u}LG91#f>vd*W^cSEvY3a2g3nY~LyT z!lcA*wHjE8BJ*hYS$MfIZr#T}<7a>PQd8W|ne#WcWPXX}{{YO!{{ZkBW%za6{6$TK zYlARf1;u#k8QvuuNtispx>MreO*NjOm4(W)Ls+`hwyCt==giM<8ERdtx?o^}hAIiO zRN2ZaP_%z;WJ@m|qEn0N;x6ch!U~06bD}xY3Uyz2!eRTqA}f*8NBx#|K&MCVC?To> zwpTc&61BA)F}LxU+$Owpe=?+K2Hai!;O+r*0Qr~u6ja0ZngCT~k89K-pl-cc(nq0+ z%cZ;OvnweSc?KF1DYcLFD8M?gkoiAICn~5_h1`E?(k!-De|G->_)-p&IIM;L04^ga zv(Lpk`HWPhVx0XoTKkhr8^?$~oJQ3>pbsbl@ys^BhErc?mEplma>h9TeWh&x^Ms33 zEjj-HaIu?P4g1_JA#M>Fy48CMh>ayb_&3M+>=)uK3fs6g1-xAMcLX4v&IXTA8Ljn* zGlqZI66Gnwjt|nF<#jXSQp#mNO!LqdQk6wKVBB1~Z@EQI;fj9<^Dm*hm^--bFV$aA*9K+0KY5dkWgAg| zs|@MD%|ZhhDAg_2cPo#cL(LeBdjYyqv$bZT19w6DtNX-cD&+`viZuC^5P(E%#%~*p z0;PNn>eOao54djmzA|oJVD2{T^wc(HS;bfG~l(B zyK-tN7O{(VEga$>%T=h&mtP{umcRhy?5~*M(-zow$*fc=USJFTW*DeIvQl_!nykF~ zfI=hN0m{|2;!vg{>={$b?sYMvH&%aL)z|GUn7B#+H2YgF(gm7s)xY-*bq{mGuSl_l zKIQGSFXMG7Nh~VLZnu%R(?Zo@e>&ueP{9o*uk8KdLmEY*oxDrt*a9P*_^X8C3{S)? zZ|?<4s+ug%h*+dBUYqg9G4f71(Z(v_hCKbib*YV0cA65UrRRg0!Nm##&AES=8kdBG zNGRqkGKDlhGYK1*hu~>%E0qzpTx1-q-SsF+w!)eJ01YD4r@y5l)LQ=lI!Yx!;Os8#z z((w6%SSp(<1Qa=C(E@_%)N_9b?EVlI6mkV4)V5o$Tx-lAfkSl40H|Ung?FDZlD~Rz zOyCz)e7WXrtq+nF0InS2gE65H16%GQsM^#a8pY7}EQqC|s^gvI#c8S0Epda-B$ce_*kP$^Zx*V)@JCRGL%SgHaW5{GR{ObDu4?^Pj|TMp6<`G z)@7_Ow;sqff@_oWAF_<=&Slw;j2r!GRW1_rSIloyu(Bd-Px8RK@dXeER{;;l3%5eJ znBoT^P#gw5M_5M_JwWiPro%|tlhd#pYo6-;r8JBd=A6*O=!y~kjw1?L9k0h%J@g3~2Z9-+%a*2=K8 zT5q>fx;BQN4Zdq60q=$qEcD<*lNf(hdW(RH8qgKe$~5rY!1nYR zFyB6yB*Dah?!d(r`HDqAZ;)*Jeqm%G@~^yP*&U7jk!^y_`8Y2OCf%W)?;ALXS^}Fd zo*7~-3a<=)U?RxaSS)lxWu@1|s7hU7mJ?xVH~5W~jS8*jBnHCmzZAD}&P%8<0O?)v zDQ*>(@gILT5rVZkp#qDCukgmDcQMrQZ}{G7V{-5OlHyd)nM|g2JxXTHOlAeoWTtOy zO8)=^m`itY+yg-i9W@Qy8Od|wT*JDDRO|Y|w}J)Vpi~9de9eHzJ5(O`*mDK2yl5ET zBK$-HrF@BI&25M#Mm3IDBWzZZ<3o0r^O;SPTqS?=`$VQr)aDDUyZ9cU&d9KPfKanM z=liH=Yi}2b^0HPAY=dDGRSWkS9JV%jaJ4kWI-^b2J!95lMd;%vHF?ct;v(skgL$#r z5MUdkysAViNHdZ1k^)p%s_5M;3h1Vma~yU=8}%z>H32~&1F1kwsdhR2{{Zp9{(0x< zHY2trc)&{$a|(9~)ZhCd_LgEe%|d7f+n3c^ z*=bO@a56;kh1JvvOP+}S;mndRj-xmV<5Aa5MsE12i&RzHFR6SmF>L4O>7=))B^c&& zDIDAt3%T*v_#XcN&q-cCGLNM_$~j;S=2w3nX-p2WspFn0Sy7b|_7>+9+KRhZ{6gho z?15Cln@wJ(%o>Z9)?U@;WDRV^jczIA0vlJHY?cCXR$XRS0JH(Td_-J2pL0e{u+)eOQXq8!pIDgy*@DZmp z-FUcc@A%Vl^9E~?WTA+o3GaEF(}`{7XHTKOWD)TIBi3ke4vuqVD69$PfnA@8jEuxo znGk9BxT_CTGzM*~QyGk}m_y5bui}3XWPontXV{|cVdScNOw;C9ZDcZDF;1?t0efgP z6dHPN<0znIu3n+sabE0R4VKXuHDgC2seCSfFw)v#ZVg_p^7R9C0Kt{-NtYOwju;D) zsf>7Tqib7team)c3ycwwJB}7*gxYcJjnbnetoxUorqs^}@>_V1^{K-*PeOkw0FJ}d zO|xhrnBk3-pM)q5l%w~Qzll_5eAQ-UMI|Wk{h}+X6k7U5KH4Y^U+fRWW?^Kjrw4?m z=j+BM8ON`s_DoE9{{RbR`ijA+dj9|h_>{}VOs~)`TdSBn%rdJNJ|#a^e!fV6)X6xR zZLLiB%;u(Oh!aLCqVdafz}p^_Sjb*4ScuZ=&oa{Q zc;2EG-Sl%bEP0m-VYb*Rpf#F+b3vWlSENvC&643*VZ5Ib)lgrQBB}!%LD&pt;GL&v z#5@4lvjN|@klV%h^A#KZP~RD44X|?3zTRdrW1AcvG1RZFSO(RS>9&6~YPn(~y2||Z{{Y2Q_lS=*4p&L@91#m;?|+~0 z&Ogr&_|gkxl(bl7o#seW<}xi_;7B%&hM;tfn?H$gO@}600S*$S-sL4ewD&SIj8E6- zJ$-hfmR5z-6sDIyum67lgITC$m>ovC&My!KAG8Hx0>_x<@HMFW8qT+r_LaN0ke2L%!NMgCE20MIT&dexME>fl9ZPU30uTK(61Pk_E(woqVRm9;$IbB zI{FR6fBAU&n}bctOY7@M?o$oUerEMP@b@syB^}B~e^Lw=naXaZykodlnks%J;WHLR z$q$kSb8&wVue1axZoZ1VUg3eKwAZq>a}chv=Q4roADKu1G0n!L7Fn;%R)}ozk5blP zuHE^HY+RBq!0*f($P4c%v>Q2b{-A;5!xCAHm(HJ5tMtJcrC14v~x`BV~1*YB{8oxckMD{JukK$9NvqQm$ zL;?C~rN6d+_=`0b!xmqeYf1~Hd@k# z^!UqDHq<99c7Pvj6FwGoKfd-TJm!}m{F3Nvz4GhDVC5&U5zG78Xn#?k;KJXYd4TXNb z%w(!5HXku8P%572?w_Un!mt`(TP_3oLy>*}Yi@i?C4fTTZ4gqZg<}2d&a2NdoO~EZ zDyH0$w!&ci02=WYkKBih=C(a?014XX*K+zO2so>A9<;_j#g;(OmG~-WWm0A20?mI4 z<`T+59U2yr<#~IBy5&y#k864jk2w!a{Vk zHRKcycHg+hi;0bbg}+fzy{OWz2UyZkD;5D;M`6FxAu-jm)*sddilxwwaQ8VinKY(p zto_)i=nM1U@6>5W7LDKG?SK)3IP!luW+M!%Fnz4KaM{>=Cr~SK??0HVOG|JC`;88m zCzwWvP$vXT3v7rmLqTCT_sb|`Ax2jACLr4s3iug-46y%tY7$X^Zx*bE6>-TnUR)E5|W=!iA-L;hW?s;7Ii5d{SCzpbNbAdLsoz0S$UQ? zy!ezVv`m@QHL$0cWw#JNcQH#pSReuSa|FUa-lA;AdQKqIRbAdmwKjN#Dt7zJRf|Ww z#=^w|fXof%~fIzd#jvFP*oOFeGxFF@BYiNnxo<% zIS;qQgS(|~{B6v(GM{pFwsA{brOT1S>FyOet-BN421S#d`=AjLg| zSbDwtg^kf&_PVK0;ueF;4m`F00KuA>@$|K9(lw(@Iv7zaBgr+yZ;!5%PyP`^O_6&^ zjt+T)hKC52RLEUkw)o;$@AS|9NF#LpW2zZtH;C{50FZ0^+Pr-WD;|GgoNM=h45xYG zHM&+A4t2}`F^F8)GuxG?x2g>YPZ74p@569I6&O?ceCRdHK_a51~*9wzYIz!Wu5 z$bi`K9#9VnV=)`3b~=AU!ezq|R|S#BAYlzes9m{yG+l8QRBQmZ#im0G7Ey%c>DKS! zAE2eY*rh*6O=t&FrtRvF5dGk7Z~4<-XnM33V#Yf_szSVUj5@Wzt%ghP;j{}1+HXU3_8iCAY9i}69P{aoCV-;C z*T==K~%t;jg5buL<+RlE+Dw3D-$L;OIo~CL>*dTYt1s*O3Eou$8$9X#vEL7xOk%7 zU$`#4Z%Q(UgfoLNO?}H%XBn9p>*{a+0Be4>!MK$h;(Pk@^E^LWdX#l3fpLVe&dBl3 zA$+qAdW&8mmYmBvg56aT!p3`ghw?fz5#3kt9 z#6ZcsRw``T9xH#uYi4_Tg{fvB+$vXGK)eG{QJPJ%w_&0o_&>ZuurEBT{mXP7F}YwD z1HK{wKyhwZwnJSEkgcGG@QGL^(-ASHnpZ&S@d^z^1{PLMUSQYNnx(D{0cOVcDA)eaudW}Wvh!4iECxYhS>CPyQ4|URhwE>D;&uN3i`4Re zlJflpyA+tx%g)w8X_4RXnR@#Kq}dv;@&^JdMdBUlWCdf-;fbgJ06<(H;00RDE-~~5 zb$>*!@(Ob~w7cbna6Tq%FI?^xo8Lc6bp$gZ$KHQgDhyLq`IkWs0RT(T{`D)|iA#A< z50rzZSlXvog!%g*RX$XCK|}2^#|i*F5DkHZvGE<+5CDr)z!0uBWIEZ_SJ{{zlgcgr z=b1^AGX7pAx(623>KMwbwbJ;_OE1@m3KijD6E@9)r@{NnYjsAzcT%xV=}H5~s_Ifk zfnk3I;)${6QDGHu3-gQ&B47uCH>yp<+d@cVhr9m(lCk%J5kXH5RJeU+vg|zi`P8L` z9-;+pLDX5Q`IPGWsL>>045!7BG%DB&;}+%${A#A5T43(SoN+W}&cdC-L$S>G?lBSt z4c{T*#LeE8*yFqYI))3v&OztKJV6~$&t`vjtokomm~xQ9A(wXRXCW!jjtPD1SLDoW zOuVNeHP;MmlA{9K0hCs+ieVt-O|DRRbr6D4((K}~TyEjgErY-vxT$5VR9(xj-%vd_ zB{#$YT!UsDev!It13*^FzveCvR<=CnhuuXD&{fgxis9-hbUg8JI?F05{Kg{GMaF+N zIQJb*u&U&g04ly?lvFepK4V6xbhB zvq?{1O!@k|`qKu|mvJxC=jnBEJaFb?Mcms`R%`qQp^hVW^!G3m9wjD66A#v&#<`9gx`yVzO1YCV@0x%53MG9NyzvIgv&1%}n|X>}-CZOo(Zzn!u0#{K zBCWsIvQUM%=4pn($uzdF-W5X^+(wI|2<{f_LHV{KEUVqo`umAlY2_3aCF=6NqjXal zPd!2wt&ftN^y6#kL4iTHlc!WcRvx2h{n(O?3U;H@F(7t9o zOU+I(IK(fXryBnNFED$U?yAB~_;}%p(jA+IKf`#LilxhBB-R!hw@1hR0v2fh02|HB zRaf}kGp?O$uD_8 z%L`cIQ``kd%)?#c3M%yiQe=Ir`$VY&He;#=2q0(&zzh=R(5_5=Xq#45Py_5YxHQtK z^Tc4)Ra`#%j;un-QMb?H9ynE07cXQ5C@AjTRrQHS$%cc*Ub&SJj%X_oF zE~18}5KaRhVHhR?GEntg{w3`Fqx(|UYm^G^?2!w3QRV4$HGVzKT*J{t;{kjIe8g-4 z%>+PP-GF}bww)!~ggFM8K&B?m(DW06>kz#90%ES5J>QCrQVKRZs$G9ED?_dE6=F4; zi1NC5Ohpwk6fLUExmAAvCHrRS@=gM{g^f~kc+a>F@#OIk(2ppQ!n9!!qS*_5;9?!I zfTl!nlAi5tvD0_x*PbPbmKR-|Ipp0$X5>u0n`^A~_m<$!0tLTAdF77^&a5!L7c&HX zSltVf9<~BCY%y~|74ln4qL*2ro6O9=Lz=6I9ndr;qkr?&}&) zc$X4{P8ImfO-aMZ`y)!VDI6SEF-q`lZ@~2%ZRrfeFaY#9 zsHI{V$?STLO~ZRj_i%_&G8}l6((>+!gf~=SyF_!%+_2@zcKsGM&^ZhDxl=ef2o{IKypW;Ze8>6^NnCJ&~P=9PJi zX-rHIyJfw>;xF1!hW;S0%naY!V3vJA#$#o+;I6oKOjoUXnfH!h9o4 zS_hH9y7_qj0M`%rjUzAG5}!UH0PGv&vk(=s?Zdo91xt|22~gSp0E3?%zwkW$4^s?l zpRS)&@TGs<4pd63mcz;M8*hPQStE4=IqT}J3c8GD41lj}5`_UtX0%#AZT29G;{8k+o?cGMr3VoR~L zR=y5MuHL2s^TTSJ=p+@n4c zMP4m`Xi%USF}u18InO$oUQ+VzQOoP*3nc=;LFJg(E2Z7F^Bvv(()0J{L=yvNo2Wgh zWifw=-V~uVZXd)%#_X_OPy#hCXYE##Z_}g%*r; zGGt!;MN28G-=K@8G=DG;9rHYq0*`y~E=GW5aVULc?Uc3yp{oHnb27_Fikb)y#XO!I zKpusqgSirPoL!E_Hcb0$ZI>c7V;m~BtgRpc*^5y6i4dfg@ZA+#I zI5-YtnK!iy$jz13V^9Dlmf&^|5ghm62DW)>G02c`ye3{TD-41#E4$`6%t<(Wec_HF zV&sAP9Tk1Vm4L%c`DR!Py4&BF3xG`p@6##P3g$hMC;0yV0AIYvzojOSzy=|8k{!$Q1g=@V%eNm# zaJIE9x=13lD=k?1`u!!|N$y))zY~9X>$rN;#Gt~|0HHORh5P%=Qa4wsg@Uioa`vgt z)&wZSuW?~(9JMYYqhW=((hC;}sO2~$JoEYyfHwn57aY5li=FZN!zAdE*~1Hr9JzXI ztzs^91`5sPbxOvfrUeU~d~ql)Q$SXFX5%GF#B^xSsbyORboLB;f9_vD;81@NR5*%a zoR&DKi{WtSd!x5|k0Bb#B>I-0c zHJFSE@3XI>j6-Vy0V>ArXLssd5TMWak9gp#u3!8>Ual!S^HUcysgre6e-JO2-zK4o zvwX|o6$ghb_4G^BqbmGQ6f1w%nm!kE6nf&G8c*FFC@RjruyLZMqJ)5Y3__qAyxb%w zrD%15hY0cW0*BZz-lYyuafmj$#pz`lzY?fQr`%}C>4xfBg$aE14qb7if6^SR@K_xP z*BZFsD^-y}F@d98kp)*S*bvqcv!>#4bsbxAy#2W6he(QH=bF{`h?sxLre1=@d8eJi zj+b}}#k5@)otl&rg_|D?lR-de&J4#g{{Yll#bO0$E1!wVJPOV)nD&TdDcv^;aC(+d zjos=XGz=RjvY);WT4AjVE}Xn^@kwW>ehg)6cK(x7AYh4k6Q(ovW$^lcX?E6cu3`kC zlF0BG;$LxLzsnL9wOoIPm_n3ufYS#f<`-3TEwa=B#C+K2r;N}_>+=Bs^p4U~HGJYH zqVWF5GS?!h83n3VDYM`61qH!D&j|jE8#a{f+kSo=dX7Zs)H&IbvFaKa@}vf+ih|OOz~e2zk*r#^nl!7NzK%!sBbk2Q##g2Yr5t}Sp zBQ{a51;)Kls@u2}JhN{ONnQpJ$!F^=Mi46TaKP-%u+ zz2NgSrm-(Wg5`~+N>tgzGnf{lF4}@$8C{5UmEM1d6~-;&U2b^?xJiyRmBna{pl&VO z_A&W_D}R6w!32nHXwaU|-Y|$tSvp6B(DzJ9g3_CtCRcX#8nA2%ue;6qfc2Kn4gPu5 zDyoYLwSYRIgDeb}K!+T)ZL3=7<}#H^Whck`m)p$djq4u2Xh{SatAEVS;Q+OLU1M_~ zMq+=!weVOs86%T8-}e!jF@Wy(_m?DXz<;$J2ylR<`82%<%G4_mIkymbUe1`ZBttZ( z45|TvscIQdQ5!kOjFN&3w{9OhfE7;riVW_$i1hOjz^)e6ixDf0B6Z?W8Qe--jam8e zQl2ukS}~Au;yOaiDXx^xshfwRGSVezRS#q|&+l$I@D)_w_;`xpvW~>Nu-3syg zz?O@eylro-BsitencAzdL+B#wyW9a>rK$_Z?Hd=t1wgLf-*WcU+GzFr!^0@bZ`4%5 zq6F~p^2AmPVvmO*Rgbo^jD5kO>9}<_q!_JoCa}V{l^SWTTF)juK+`L?^%0ISs1$$S ziAq-s$s3~7RO(VHa z&f>2KkQ1%(}TFm25K4t^SdRg0Xf9aVQ|$LA}0R;z;Ecr;M_%`6IW9nnRL9$;62I+ zW!&5PK)bdc@<)4`TY_zFQ?E0EoXWDgojUwY&wo!46EFbfsF$2NVU1!9Fx!7O8hPBd zZrQ|cNIPqpuJHaP0Z4&iih^2lrxxpo0HJQc-aMbQI)ZEpi{6NWfYd{MjC2~>3J>oJ zHw_0fcXlULOk|41-c6Y^5?-Q#djK~EKyqGA9`HdHyZ{`7m_|TS3w_fa;l_XXMKzD2 z2e?eLL5#xNc4Xi8sAdX{64rmS`+k4V9zL1zG?j1u+=yYYiIh6=1*`V*M?pRh9(@xi zLgp8h^_uDfU{=Uw>HryMJ2HPI!=mOl{r4G4+n>N?Lqi}L4v4h$oSgpva~3q2MdO?N z%e1;Zf0{otaaPGw5o zKcwF>si|McFlEVBuDE~xBFh@8E6K~QAmSsgUGD1Z&Y@vtg`CSVy_xxhb_#C+mO z3hL=TTSXHi8bP!8fHQcOj1Cp2%|WMdAO#dGQVXy%ETzSk{8QvTN}kXIG4UzUat5~E z5BCC!EXw}?bHt>@^;497WnKb6vhDE;a3^ykP8GSw%ptg4=Xrm?<~}n(1)eLF`Gn{K ztRT2OF*DTKb3xII@c% zGbzV_W$Rl%x`3m>>LpmW@e^5o(0mzqONJk#so`1GpLi0$%F;gNbZezP=W{72ECtw{ z%XUHta*MZbh{=D~Mi+<3*5*lTSDMDSl!6e7Q)gacxfNo80iY92MkX7~6ZU=}IXSz2 z2y!4rT3;9OH;GzRr!_DaDZqYD5E;tIT|Y29aoN+Km{$-b*2{t$Td^#8mu?pw4)ST? zF75~x{3estLzAdmKcm#YMS)hTY}Mlx5GuYZxq@q&pDlOAO+F;K-%VHVB)Ch<{K zQcU|9fpp7iwwb9_mfI=~BDf7)L1nAKFpiydE}^s34Y?f(=!j|=-*5^IRlsS**B<9L zNoSagKK0C81HThLWhW7(BXRIos3(*|lp7+RY#pmyb1VVX5LTP|c&tk^a-G9E<|`aQ z+Uf2T?U;XXBE;2mDc3MDY3fkp6FVrVCi5=&{{R8am|;{`=2Ek^AT_O*H)QWHY+0)a z4g}LgR>v1(mKCgR#7im}FFBS4il}O@#0R$?o!k~FNm)wonM8qnpf;TngKEG6{hz1i zFeCyDdB2!-R4AmI4?V}(B83N=TPpPggo5r}ylQ`&@u_b>AOU0F+9S{v3ePQBRj*(C zW*dcQv^egD!C#;E2qgQ56&>*?EUaJob^b4({Q}zV2z?GuFoCi{LyM(vip0JEUHD#* zt||tc)=P-tD@EIUmj-|Wawgqm*($@x%@aui-f_=AXnaDqU#o~1NEYIb?l4-Y)4%;M zi%2iV25068T{ja3?1f$?xTcw#4iBA zSv%Z41YK=VDl(u0L|RkOvQmZEUw?_8BZB_`L5SWhJ#zqX*?kZJw|i>yFU6|XSXUN~ zdCaA4?j5p$)%=V7qLl$Cpy3i%*y4;TEC)Ucb8C1103%W# z8r#EZ>-2&D04yRuB%v*8a6Ea;$<%*bpE3#UGR#@qZ!6{QTW30eZH5%4v-&|c$pWjf zrZ89l*_&(PIsza8JUpHpMhfm_4!e82dEy0Icb@r|fTHN2y*)wWPE^0QWpNKH&{y|{ ze(~i8Xa|%bNmi&-ie0z7|_Rl06X zy}eA4dsIJ)muvFY^V!5;OIK-X+-0D;j1A%$$g#%qf7p|trAkZsCsM0(tW0=@gZG!8 z-lFKKZ+Mvu*#pc)?g-jTCVyBkyUfHU6LkKPmeec6wNe1p-r@ki5VZm*%%Cj2WXlym z2}X&6;^OJ6>NEilJN!j2k%xa3eZ~`|bsUDP#Gu8y@e-i3!4Pkc7c5%H+{eXumC_?B zd}9$f!Qz{im7GKuG+#1@U?rp*J z7RzTEKiqh4E2@`xIpPa$!^Yqd1yelTVkH#Wjw43`a7426oYbc+u1bIAA`NKKORn=3 zSdJ@I;ssEFkf8Cse9OUXvr37Qa4&dbIt_h%%NKlA9XZ4pWA*LHG`*?^j0rIDl!hh^v zGX{U~3JfKgO>wE1ziEFQ1r`psx!Mq+3U8@mp#rGy+)|Mn4d?cO>k4pZY^&)OydmlF zb2CkDp0#%e3&(f}fCWknDz<)+TUE7`pIcr30O&lCw=dGJt56^?q`WK+6qqsFQTBtC zvApLX&w%9<%DSHmR`mvKpaVnE`)HNhCkTt9iGOHS2awGI_{)EYMfBjHy4(EI1&p;V zm=?czZs--v3sC2eECVv%CEKUk{#T3fT9Lsq zKvlmXZx`oqf6HRZQXHy#uHx-=%UZgeU@WoC)S|Oc>A*T(-{K_dTGBl`zdM8JX;Sbt zRro$8aR$c~_=n$^KD_x+2OPTQmy2sP!wX$&zK(FoU8pTtq{D502dBAHsKAv6Ae4Q% zfKniE7(EbNuK2hu-s`qmVauy!Qy6R{kZ|u#CF#{oY$#c1D5sI)HVUaFCu7a^ErMy( z{I*x-5i$j!;1+{wG=7K>W+IpcYZb2;+nmLh_~03`?t` z86^5lz0||aG5-L6@K7Cy?g7^+SI@HT=~9uVM@{Vclv)DdR(|la4eM@c^Y(xesDsl~ z#ylK6z}ICe%f5omK4sAZ3Ln^-PcmBmQx@_7$J!xQ#?%%15M{GNw`K;RI%8v1)*8$q zix*mZy6zyn3e6up$BT5-neF!(XEZ6YuodW+npF#}sINJH@0%lV({-0U%a*68(X9P> z`If{occ@^(zr1aj**#4vu@kNRH5M}p8)2U_kXpS?1+UTuFIO5;x(dVwz=v-JAVw)T zAxC3nVxWb*JN=1u=KgZxT}r`%Qn~tj zmw}qn(=Nga^!UuN#pY2cyUd^qzLJNJf$9c;F6jP|92V;?p@=&&)%~SKOLdl*jGzGK z--tXBNCl3@5qN^G$1krwWq3uPzXAPVTt{F{?P~IW^AYbLc`c$V(F8-nfzaUb1jrq- z)qvfgI)*$fOMGqE#)iHW|rUYjtb+1ftRjyy)K$e?YBR5CB#i%(aRJP_9Emt=v;C0i)1j z0ys(QU))4L!Nkioskkuvu(ef>k|Nm2jY`5U1Mdh6fRs8%a_i zEFqb3thuqj?xso`0c@QQ-f{(kUo$R$1u-G=6an(VG%f=NTa2!8QR+H~n41h{i4{|ZsVL>2AY|BGt&dS25*UK3u04$PZ4XY zY9g0~vBuAcDQewa!>gji$NkJCq?IfEP#O$QfV!`V(322BfbrR=wAKJvIQ&$hO1F|Q zR$^sCA4))|gJ$5>lgS%%5sJh;LFeii#CD<|BfC7q&86-(0~EqT*;W9aAhnNFdj|%xncQ#8BkKw6c?q zo-qfF+{eq*&xwsrzkVg{&&==7=6I*gLj_S6 zzp<%D9}}X_5Nz`YPAl|-ih}1C2bMzwP_PS$XbptMUM1tt-esA4Ih*%?Zt@%Ns0BnC z43^k<(6^z6UBjtu1wuUrZ5D_nR@Z8`PW(fDQR#mQX zfBH4`q~{;t=vXWB7Rdn{B5MIvGR7J`HU6RwLVa_8T59Vb`=GhYaZp}8N`SZA&oXx_ z0%rA`a>HQBm975(Sk*FrwJ(W8ux{%fYq_3+(*d(#wX)O;@&5p`SC6H=#R_H6b06oS z`VSvgd`tuLw)ra0TE1gcrD404?Op>?=;{F0nOgaHP*%=h7 z>ZKLcn`;$m3tO^0q&f_V%kP}O!y1%q#W)?5>Oodb(FT-K|#N27H8|$9xTor9C z{9DX?+m0<-26+z>p2JG`cNYrK{d+nn&-r4+NXko22I{ymUfZx?5k?5NKDZwVYDh`!#UfAPpQa8UX1?&I-RvA8_|m zHf*QEVV>iN9ij=eJ%#+E{sNAF>KxWnedakcce0^_FWzz&zorF_ z`i7i&ev3J0PtdbDl$1fNGZEf*EN@Rxe7Ja&s{WI1Y22vyGf?Al?S!{*5wPawMgXEx zWDE(2H?iDEDNHAEHCap-%tg|}?-|0MabAou7aUJ)6w$8Zs=qK?_RGQhO3c?@CaD5s z+%Z*ul_r0r_w^TU8Dp{@Af};tQ*hDyY9P(xUvKpW+NdfW^B3ViFip4Zj4&b}3 zWaheqr447g^DF^OyrnuZS*c-UrK2_XmSjf7b#%Nm{--enPDq7AXcd)qJC9RC27wO{9dhyMTtO~Wk5P$O#`QAdY1USYPfV7XQLfmXV8jKNK0#=kIuCY#oAtzCGSl(#7Nho8^Hc{#{N zhk?rH_ms!&wvKNu{{R_?7HENMlYz_n%!CvhAMPWTfNm(rOnsnM-NMNZHwCg88&qnF zH4>Eay+nzTSMKz0S;PSB0Ba5Fa8-+c9P!>JM=l?rbY(%kj7HmQ`k|I@enFYeejfcx zHqfz8hldaih^bot00yORiFdP}w;xp-%==(T%z#}!ck_u^E4{YfFNpfrQQnusS(HgS zC3y-*kJe^!!;%DI35 z2M+#Y+eZfY2stIEDy6F9=3P-z%2Q4iTywocSmN6$)rT0YeWmFMO{nb}7)DeDHcGYb z>rhcLlEIau70#e4(C)tF@dmhmGEb)^`^MW#yf(pMWBW=R*6eXm7Vf2hlZ2j1kSQdU5W_WIh4;$WU9EUqp z9p|_qaFo${ulX=?F^v548Z;HgrMGo|5e9M(^Di%nV9iTUYmc&Bfeo&IlaT%7G00`a z*H+$EZM>J!)CHJCFD$N;e9V!pKrj~^w$a^8jvej}48~d4(@0+*La3#ru+f>U^D@so z#Z_Fkt1Pj?zSseXS&|Q!y5e60FBcBPR(|t)=b3d8YRX>`TH@3E!O;X~rXiongDD!g zAX{g+aZ|v|*>ZChZC{yxXL@Q|%FDd2dx{zAD)TIHQJ^T6K!sP%VV9cjQkFlPjRs7@ z`}@U2TfpXCY8uS-3-9T5o0@onU0qiY%Q^lf{E%Al%(ll7QrkY@!z;UBRM27s3Ux5;ZI^C(-&0_^dB36Ku@X;oK~8{hu` z29lEVUs?r2Zec3GRi`k?DgiIY5Jm-qs@LKF0Ku)^div@A0G518LGnN*)EbxQt97?) z`TRqLS(Z27Tt=wDtT12M$8eM)9G%r4yj~eLI{yI9n!5S|=wOOUy;=}g29MO6_!tzb zuAkTXjv@hw0r|UsZ^W*w&>L2QiJo+VtSxvqO5YHhye z1un8ISBz%))G_?B*K{B-{o*TH8A6IHIrQ95IA9RC%>ynw;FNiYm>M3fX55TfF$){s zvo^Y0Iay>lEvwD{0DowT@mX2JF7c^RVAhRB3}b)>O|Xl9Rr4Gx=IFC+?p%ZdoO@ZX zULuHr#Qi7l5as9X9bH6$n^8MaZJp%q^A$2S_gSv>=SYI9@8#(HZqAzsIwYFCfH<|}F zy&iY&5NB-}{{Y`{;3Pm<p7M(oa<^vs#YIVt&7vbg1rH-M8qN|BcnlB)3 z0cIUCeXbrFhVTbeaj0?$=wArA^A)lSOcm#O_b8lyh>SL@Lr-;3nMM=^@EH8W+ga&|HWfA+D3+LGtrq&l z$`~B|z?@%*jl%LN`Rml++IedEg6W8W4zB(NIZ~Hvwz^w z*xXm*Tio+dZXOBn`VqDY=Jmw3{{T;=`G~uJeX;Br(Kj5s#mh`NmZn+8VpIoH^q1qu z)uR{w<(+O`aDAidp=}hPk&5r>(t!KF~eWxUq9yCkDyd5#AU<>H3@*=Zl%Cs>G|^z3ecc+XFbK2X6f3CbDX3^ z*@ZNX#r4Lk^_0S~Ea85p1|sgp z-|vVRP+5pCD7R#X%`4_*%*zG`EdT@uHNi(mfwT67m^n^y>H~D$^#nq&Vz`4tTzpLN z!KF6ARRYG-_&#O;BZf!WQnF!^l@IsCLWY%eRy%&r#1aSzQYw|FXgtKlet;T(DS?9B z)HRhaK%n!PU1TsOp<#^o02O&Ty03_W^XB2lmEDnp3oV9dZnLP>!%&=`kurW^fZ_v7 z@62$Bd@FkUeW3$@q9=|A=2T{YTqhk%@cPsjDF&9rOWXIK3ePiR`l~P3e-j;GqM+Wg zkK$OoI9KIPKGNw0m#Zl=XCcpj-Vq&Dtp$9RQ^`<#v?z7u!+G(kr5FNl=a0AV93b>Z zyLHY#GO=rtQiV5d=a?xCER@--HaISq9y zjbjm}FdMJq#Kx9Ie#dVlc7XwSUN#-%cp|N^QIK}l_|9PFbwpCE#~NjSvy%ag=co5@ z2OAV2;4ORjn3W>zZ|!g6P<*V`(pGY1l)#PWi^{)0n7eq22g@1q!rzTByc9L@_kcn$ zX&t6oO0C_rtIC^-6>VEu+*Q@U6nSJ&Ttp3v?>3g#2u4g>0xb-+ed-EW4u#fr)L5ay zX5yO}LIPwv6T~}J9JQ%`m0}?O08+akWna83#al5*e6sX`3IN@8zHw#LSsEy|yL??| z)Y%-CxBCJ?m9WxpTI1$1TJo}s zAx#xq?62ZbnYl0*NUfuyiDp;up=@w&#;T#^00=i2wui;|iv(?dt>?wYYRa#a0*)NT z*d$x9fS8HIr1|*zXUwFtzo?IxI2biAn0Lham(J(3@wiTB&d~R`wC7U}B_<%$UFYags9535DwYlfVUT7+wq?f%9EYom=ft^% zxT$5qc}-?ng~Q8#?-ejVc!jHi!px2!-Wapb-U~>X&VLg49;FoBCLk%z6pF+&wq54& z2Da-W=j{Y|IkF{?cbs0*=|9a#9eovc{{W7X@rjMWxNM9gt}&^51vOVMfo;*m?WF^o z#M_9K^%`y|ZvOzvpZNg@fY9bS(!ru3dj&#PqQfHRue9-hp-p3dpNLr&FjbG_bqUfNEqZI>D685Rt~fWTmjD+FM>Xd%`?dht9NX5l1Goct z4GXd7iH8+JGo&nU&fXz@3Kf4G%eyjObr_qx)*)IITm2z)dk@wJ8EA4xkbKb}1Y*jM zV)&IPI3=IoQF<2GE!j@xQ{uQzck>%2v|IRh6E?bkm^EsRdxBGJBu_m)CUjrYDiP^( z0!Nz0f^RR_Vu}t*Uw!&NqmWI&j{{T?nW0wKymnHH=4T(TKp00?)9uyllPE2{+SKNScQu8;D)=ZX9E{;0U@lY;bp<58!O!j*LEuhLzP%L6as9JMS~kHk@b zSt{oU;fh1uWBdOApvK=ss2a%nj%9&koUl@^$22=8 zh_JqNYjqWrlnUAb6kx}l%*UbhZO0ialG}(@U~s=@8p{eTN@Y^&b9tuN7E(MZxkm@g zOu*(PH1QLd8K>y)>2GlQ2fKwapOO!MYwBWMH**(oOU$z#AiU}c+!3e55yjgZaZn?C zN@`W_h~rqfYECmSd6vM%y8FvY)*?C0{v(&DgYF_WGY=X1`@|^an$+Q#IH&I|bmfgO zLe_xHzqmoh@9_~;ej}3dPIDJGc+_YMUMHc0SWmpOo*{fsQtJ0f3TK&gcP)c|mSFjf zW^VaedSnMxH5(qL29)bk^<2;HKJX(O0w7Zg0w{{Pp+R$CJ+3905a+pOg^*uh?1=bCU+=kLfSER zeZqFK26)5-Wiv}doc!toNo7cXZ=NF24d}0gdhrxcZj1?$`d027KQNY7y+ItUe2(NnNdwzE~nY=n2M@S_>`4aP-JA*7-F_7%;HBl+;C8~HUTB10AZp-CAig1*uj< z1AMl+DKSrQEhEzd3@hoEF-7%p4yP0-uNN*Aqk5E>4>^xK)6^)N9tHt{6e_}I-`g=_Ba#^#Th!3FM()YyFRxQ#0V5dhTJw)P1%V! z?#g5PaI52QLFx-Oi+x5^TZVktvPu(Pc@Z0g2q&HghEy?s0f&GYUgrFO0H)tHs;@9k zi*7)me$axPAj9KOb>19Pi@5%VV#eJ|CO4U~?zp^@1*287YOV)AX@PKAaPfTXme&`s zyx3|eQpRjnV-*V3T&`8D`-02E=4551#NnAX%46U74N6Ptf*XbTsbw$H-sR&voLy!f zU!g*ZWp6BhwyBEo$Iy6~yCuBA64a?{shPT98^Pakv?12!F{&_sW?2a}dLo-HL4H;CiztRR56neV zzw*=kDLykDS>jdQUhqpLr$LHkXs06Mwv@B{7NDbvWoqB4eE$IIlvi4_5ZD;^o2Hd=K&LElw#d9jiYmQ(DMdfH7R|IjEh-A1(nafwOzVp6}Yp1 z;#6QU($L`cLtk;X?Uh2zLSv8HFf4OgQic(j9?g<(q)%_yJyIM(-wu)$Q z+pIv2!O=rm?7wF7Uy(kyo>oIvvU~=kSg%Y~v z3h`jyv-y^}Lge3tC+EYs0SE@^zIxAp=>UL5t9`Y1agP)$Yl5$e&*Be5UO>bKDdnP8 zY^Ji*bz+UXYsrJs6s13Z<`k?W zE&-%6gsq%92cuTjO1sXX>-6QIU54v2_+|;p)|%5URw*4Gg-da!W_wbr_rJ5u=hg zV1*?vLaE21V@Q);U{OWSS%PwvNZ$#wdBj4fT@~_P;SHkk%M&1?n4^7vMU|&8&E#(E zhpjz*1-oPIEm#c|1$)buX?V=RdSuIXtmJ^%Y3jhG5?1V=-f(Ue(ySoR zX3iis(XSWkTG{uAl+*rf`1)b`Emr6@7Q`twE*Dq9HHbzgfot{0kNzcT43-ZgnU0tt ziuVcepvJla5&M|HNaK)-Cn?S42HHLS8h!IOV%y7Zq=qx)P z=I<#D8!{Lr(KNh)-sNckEn!uxKm|iM-ckjQD^;)nJ}U*YbQE7#HBXXm8^FJ^}u7Wef_0rWrD@q zk$j8w0PYR4*A^VUU{z@M6~P8Dwfn~a)XpM(;Q*^_qKX}Vkq}}bx?SesG}k=KhL3rP zOKD5{L^{-n?5v5OKNCP~!4|74dDk&o>j>?NODbsU-q<_?8kO|+cCg*Z5g=kpVmi{G|VD5R<-y%^hj9P2sr z1dTWmW#+$sYQ(;hlM&z?aEsWjH`m%NLC`O2ukYFhK`Vhz2ON-9P*Bx+ST!iM=DAbe2#U#VOa*7L$fPV zt<@ukQ$Xbd0rM6>1hgqi!0D(C3%*7r-EeU&F1VX`n4ob*-|H%iW~E*jfZ)a$A6)+c z*lz%TC@3fMNH2NM^Gi#vZ)5w!OR0HJi>uBU~IjSIl~k}gVy0GYHynR%0lJS<}LJe z5~AJpQ0qi~@^c=d*Zw0?_<{-)`G9M7{V(x<2gYU?V5qk&mwJo8p{{0_tQ(GbVeWcN z^RJ;>gHsMM^tV+qV!44nQmZXQcNN`pDDGqiP?^pp+nBeT-r&^P)Jt*nyjR40aRHTz zA$(4IkHjjh3-$CvS*n#a3PW#y;s(Y7*!hTk*q0-t@`NH3!dd;yTV1AuA84-EhGp}A z{&$;{m7ABDsJAtU>=6OrucB z(iFn2-<8QIU(aRzW7BSxN9{K0Z@eWU&2SH#r@Rsz979>3hH z0)*ncAMyZl^fe0_4e>0fORAEm3*o4w&uLrkQk{_+>;`422lOzlLF(gAcjPUqBlnGM@%o z_=bwgGtSO)ei=l`Kx5UJVs5V-5LH6s%*mX3t77tiHnogL7#aZ{>N(zjaRjAv&ZV=h z)y(h?h^t_9@i2|kL)GNue6hq9I_;s9pm#^iAR!ex>;7&k=!(+tq3oxA7(0^JV;flO zrZ_Iz)L#ir5I)&@X-(YY8ROz54KF|MFPudQ3Zw@mfGs6d`qNf=vipw-ij4=1fx3KD z7UJ%n(8EF0zGbheYD&1qrWwD9qYmdEtR4w%xFg^QDC**wDxi4?{pH)Z)#1!{GDlW!TUB#; z=jazTi0G*68i%=mZ5N-NN~$@5X0zf2Yw-ZyCIfwQ1fVz0f6P-%S9pwsQo3N?2CpPG zO)8v?%Mpb&E(DWmF;R z{{YmZkZ{_d?_%6z@dDZ=Lo{5>bkB~WqU5y!=lPcaGcaB=;omVstZ7;+fJ$S;7FF+; z8;a7b2L<4HT#$yk9Hdgu78bu2{6Pk2X^DDsSp4P}i&#POjrI4;ptu+mcWuJLEHRf} zB_>c-Gq^5)#4aTQQ`EavsyJ-}J;j(sg8t=Ey*+^962R8bsjFde(;40 zZi(Wcn;t8;3M!Mj+^6B&DRSk(oz%u5+M@eDVPgj?=)(t?Mp00!t`pDRBRcYxd*|Qg zH#Gu(nysrAwPn>*Ye3LnYKv=&-Fb$GU5l^cD(HrroO_nwX5G*$%Ag!&%*hz5Hk;%7 z)ZMEQEP7>yl%66tO~kA*YX_mP<|w(BXW%+n+{wrAGrKl}L&c1RkiR8mu^Xk(d#URDni8ePv+u@H8-BYI(KugqEM2nVX{d`mWx!k_o%DHU$z zuPytBV2Xr@p9&pH#AXnhTP!%$OWN9E&E)c5Jx6h%MQPw{fr5){z4{sapaU(SvhQ;a zWU72ZFVMO75LHCXpxZk72VYHpklYY|ODgRCAg#CY4a2$4<>P-`>$$FDZ!oT9h8fCQ z>ZbUPJV879Tj}f}a@BQ-pEABG7sM->z50$FQ7de=Y0o}j#oyjpsYg+69qwH+&Za!e ztPH$VXy=$U7P^4aHUO9p-g_i5T#8E z&I@k)fG;Vq5kM4df5ihYHy(y<{&hs7gbce{yfa` zO!IngcN#|#toQK^&)jma@96`8p_SkDl%=#Gn6km`D=H0Uj2HRl0jkb%KyzJhf2=G~ zn`ykZzlf|y1DcySpoeYOF;xclj2SvAHIfLdTbQQv_<=?bf^!8q=ANT}qF7a^@$V7n zps58~FCxn&WRT?A{nq7H6a_(NL0EBo#)BD6|5x1UNv-FmM<1!Vc&UlUieb77~ z+$Bklly+@Uy0gY&BsAZDM(&&|Fy!Z7>9RKq0Y-t<9DSx!Oa08jw>Tj}?^4~$G;sJ} z_$VwZ9v|9JP*a$I9%?&dMrOuO+7tn1o0~V7_(y=-*@?Xv zAH7a+uy{79ViJRh1;b}Li{RtTb6|Ir{D}T$9$N}g@~l7%cB+reBw2Nr%R^HPqK`44 z!FU7;feH>hS~0kP8o}+pOSJtVD=C$slb<~MxU!=h+C1>;AI`$7Xs{K}P{7==JvN0_ z`HeHSqLFQRIMJze$7jekeqzO|zq=|6s{LiE*^yuyum{Yq#99jev%og#h+^u#B_VdX z`$CDP#2608v&6k)6sF&2gqF#5_q$73D?QY1fi0MN!)x<@E5hh!XWH`(nweK#9-ngB zrdg%`0B~zwP{Ec9)Ze(Ex%iDDYPH?K*#IKM25T#Vdxn+@`xxy2rP{Ea`ro*59D|O- zae(x|wN+c5zYv2?A-hW#T1vNxmXu~9;X~mA>5Xp~J$+i?;eRlJ1GG)&+;SEItQ;(U zBhTvLwdP)bplYVo3j4^>x$GH z5Brv8ujn0$&=$;atHNWU&*CzYWdRG!GAM4$B*Zzvj+gBLn2_CwQYP~?HmsKGTy~efX$B?m;=#%T>k*5XB4Nzs{Q`} zLTbz!J#3~B05_LKR}o6#m9`JKAOgR-X>f*2{ykkq8^~4vp z0~*!QYs##srL?!@ne~(Smqbn^4flR zh+u27_vWQ2aSELUS`4*ObLX`I@Nte#c!tAV+^bk$Ux*cB4F&O+nNg4v1iZL0)Di7} z->n>%#b)Bjv?fdDQh=HO9~yyt7E<2eyFW0Z1-at>(XcH5T6&|@6)}+1Run%MFWw!B z;onh9$GVAjv$*cokYsx~_b4QY94ClPf}q_vlrErKZQ~I=&GCl!u6)4*Y?uP9zJvH< zr*8rmto1SL0*hbU#Y?V@kU`#c?{Elzv;tY-X-4AJ3v30}Y#~?7si9Hbda*lbKi` zgcV}Z{=7sZYO%cK9+MXtYC_}T18<60JH94M=3Qfz$}Z|!tmJrL-5R>VS#$A!Fw{We zXvR6oEr_zX`VD>Mqu4SiW8j)~3z;)XUHF;9Xb5V{nsZdjf*?CU3tU}a%)caL4fbXq zqZm=Iw6wagCX(bFhloi=fGMM6RESoB!l|n`=h-uG=dvu=o6T`793~%8M;PdGYZ92O z&VZ7m~MPr&GY+1BAdnJ9Q7h(2wzM$)!GK#IA(h|PR z%sQ<<%m#x-0G`_Th5fusaQ&sFkNcoB#gGqwgT^ENv?Wh& zObN-2%WOiqJi!)}T(4t)+`<-DMz~@Kvr8lx=iB9F6OkP+%ZeBAzRwK6& ze9tVU+RHm-SJeBSAJ$%fE@kv@1RfO1wLNp<9}SC{cqMd|W%N z&ck&AI9A>~{{T;j=2l-WWwNpm>zsdB6k;BBO_yn%bp^vfqfd-{%A0SDeXcVwvIV!i z{{VTJ8iHM3ynIB$gQUvy8lqWv6W21{ZVK3y(RFHr9X!+#15}%Qyg^A#TS6~uN32X@ z(zW9C>*JrY$STKwzP7ALGXjj>cPiDh&0Q~vK$7}0$rR+#3-X1a;P)r4x zE|Zg-YWb*?&6NvfRa;!T)?uovrqNn5eqe@xBH45<0A*A2h~cI1p>QJ@&%F4C2BP*a z6C)J&R|>0qG0Z3{Z46XseT zh0$|8zX(=;s})@0@8g-WC{<@xDf4iuO#c8dNV3w}_IZ|ZD?E=3LGdndgO!BDy;>W3 zmu&Ef{OR)pKyBKKV%HU`c-(j;zzPNHeE$GQ9JZ|=mOjx`%b}{SI1L-PUg(@FLCmmW z>(oyk;m$9N+@|-%5|J$`V>ezqs4K36ZLX}kZVOI-eqdqB^NH<|-9w?t!4Q)W5wAu} zJTl%0p+T3^opB3V)e17gT%B_hwxMf-JbXh%P(I7HA17@p z9%=sOC?i;={IiZFAkKxy+RAwR#=zV_TrNM{4(OqW$SM245>?4z%J&vpk85UDx--SS z!L6HrHF`WmM`sG}TW-D@XC>VflN#gO0{sv*dmSb(L_lB5VN3fl1S*4@IhY>h&W>?~Ov{n}@d3^rVni_7xHHQ8hk!wR1B;Bs!%8Yp-5GINxaBZ#i}2QB z_Lh@j<;hWL4X(B;njB0E6b^1^yq0UXs6e5AvQyt*Fht&dn7pybR{EK-Y_;X{7eK8` z&$(k)2ZUrzklK74zI%cK@JmqRBSR+Lmv z-~M8Qe_K8{f{l{xwgA?pj`JbIqK*`b+Q5j>?k-++ zRpJ%8Qo^MWqTUF;pt{xDWAPphHA(eX#!MMnPd?i)(1%;W_iCH%`IZCUs+@*&PH zRGo?yyM&OOn$A}dts_{k@xLG9w%Y-647^34EtE>7Pl@C<{6rV9tjf(RU$moga({MC zJjZH+_UZN?F_wtCSig#eRO@(g^TR4*gR~$yVu@*{t}P&Kp&@03iMrqWiEtl(g`cF} zfTp?36c?a2q~1AFs+a!3241oib=0IP*rOx*L<9m}MRfwsC5ORFTQ%k;0}Ud9HwOe9 zs1KJAL})qy-flYFREs`redYw7fPgBVAz`xH=RPIE)n+$M>+h&42&)Qn=AhsUb4IV+ z4^|AD9x_H@XH4c((7q5#koP*N%Nkt?=PPi|QCx ze5={@05_6hxA$`H%vN~KzwR0u#^SB5tXAiq_x6HS+QTJ53&5hAPdSNydg>pbLeca` zY#`lH=eTBoLfBsw*YtuA2ym;b$_tRzXo;^NvV5AC(gvUxHknQ~sNkvH7T`Nu%&*1J zHwYWQykqd#0trchu43$k-ghupv1yo)zt$BvyC^83JX2S!y&ELe$lc!)dixGqxQ z1;CXH+)~*5GTl+mS`UnWz_QV6Snh3Oa&FaCc81)?v(C-Aj%#GXr0c{X7 z2Lj+}P|v4zxDL`b9WMHq?-T_c+AZh4BNp+l%t1r4y>Vsf4uw(H^!pB4P~HlUAB;o?~2w{@?7>MFdA<`E4GEr*)! z6KGZocjKu2ofVqT_YrE{u(MEA1FEhduM`f*p+UAgW?$kWfDJtN4JdXRE&l+JrUox^ zoGssfrIuHlqMtOKc!Ahxz`Qd6pqu6Je3^Os+av#=j6$5>vy~phhzFqr(wtAHLM; z%BMJ*3)9&>am1U3;AouX5H)w3%v>FROrcqqW0QmyaFi0u@?Z?T2L2xMh9FN=ad!$0s=pB`@oui+Nx(W~s_EuzCXlnmuOFDBR05li zA=QvTu)ZJfxYWw^5G}Ee7nE$JHgQ$Nwos=yOo2zWF<#{w>j%<+(QVG- za^R}eyx=c4)TVZD0Iu5QftaI6 zxMCuTGscYXaNaeEKh`+KT-&67H4+R*+^S);LiWQcakOmnTbZn7%>Gzq0jCSiNdHET3SeBnXeJw(S0!69BOsMT9#Eor*he8@93GSja>Ki zwNP`{QA2Un@!T`K_5KV$OM&G2834vWIlnUo8+(EbYO@UB_x*dBfihaN9X0Z;H4+qE zkppc#O3^MM`!OgB&Dp=!Jtf);f6c^)D}%47rkJI*`ifZKD-Y7#=pMHS1-7u`^2AYQ z2p5W9JKS!;f{L^uD!Hq4J)4Ba!5KCR>Z_JM1vp;%{{V5yrp%3BbpuN*SS^i(>_1q7 z>z0pQw+6BnDQSYjFS8UX{UQiJ+qa*INnona;-K^)&||rRm=?9*cZGzZe=<|XPw#UV zfi*&ajq{n4V5>~9oiE0q7T!J!%pC;Az5f76MFklRIsV*Lse-W+LxD3EE7dz&o^P)Z z*dXo1ZJ}#0kjkX#Cr?=AYt%JDBM2W;DkY)A#4Qn9b^(6K4CHtF<{NM zev+?-4Yg1JF-K$ZG9l!mW?l1QW_2Zn-Y<={~zi{$z#c}WE z7fDIM*;tS^PG$CR`20(+X&hTXD%%1Jw@45Hi{}x*A1z8uAXbcL5d@|A7tB;gDPn68 zk*cz|$9DoMmQmnC3@^OO78>El;#JdLlvh9tkq10_ zfZ4hsgAHak7|f&n{h`sQ6n1hpZ>g~H3#Ja$@AQgVUQ3mqIQnfUgI^KWS!DStB7siuwbkHZM~k-0rpFuK#7Hy%7no?| zZJ>BrbqaF3Z>UucoL>I`8s-UA(sFo!oV2h*cS)sQiIzqcf0)NmAWO}4)x-_m^(r>u zNt(Q0Z&8R0U`4`(0d4>vZ?(X)1_o}6GPYk645)LQ%0rEJ1Gd}}oZ?_19@spQ-9msw zn4m7V=2(UTUqun`49-ocQ1twUA|cYND<1d52@7r&dP1^&u2JCfhMPBF?I6r(I?VjQ z#U-7z{#MV-gOXM{9hF#P=lP4Z!so5@X z7KxtN;m=}xu0Ca)pwn7uKeFbH6&k-1;}?@qCMHHNW#+uq!Pv3JZ!Ycb7^!LN^V}p6 zGPS=jDnjy6#t>!5rDpWae`;VYQBlVFA3Vc`1?&#~f6b8Z8zKUSb*5-aaM`-19}esx!n(kG!K<`cc$M{{Yx(4u8OEU6!rEprw@W$JY3~MWUuFa`=PheWrC6{1;d< z&S;$9f71T{08b_>>N%`IeSKPB6@n&t;%>Q|->t<4i;C;?Di6Q;={Jw7#Y$}>X)M7M z0jz%Ts-kpS`IJDyk>(~Yj*9&vBB}FmLDZDGuRmzPL8`208j4qiL;NXpM{Os7Ry9kn zIcI}$W1~Y5?=JZKlM)d}D$Ha!mQuJWzgn2Gf7+^DwCjq~I0_sB_q}2fX^Ju#2rCGu z7jO3w0v1(uO>6BPr33qkhw{BwRSHn~P8<8nmj-pG9~?sH6z}`oI*~P5Tf_*{o?iwg z9Rb4I-x-HXkVSXN%uo=tSbf->0RYos!FV`j={eP4Hr{^Y)Ao zIswn`90S_&%32|4{5kx?zQ77_i2!RMG*!fGGX9F}_D1#HBEFcNC3U_Iu>O)xnf59o7Dk$NFUe^~c1q!9cM2aA)|N9yYBPEdeGx@G#`SGfLxMOV!*1?=_}nxp=Ha6LFnl3W>Na;IAdemdtn^ z8wcVZ$k07E*;W4IVF}H(k{(Qre9NvrNDGZ9prw2{F#@dYU^*$}dY4rAW2yfDdW2Ku4HM%$pD;_;4`TdAe~MKxwVZBJ z+QkO}_NhGu)zsgE#&9Hje@vEhba%YP%(FEc)6$PdTfT~xQV>s@{$$At{n!pia0;8Zpk zYvw;0Hx6?3dHI@E;DNP>(gE<<7z)@4VD1!DAY&)?pgqv^RI$m-XhD}c;^HRaBTTE6_KyDm_Ou%R z00HJUAf64K68aB50i$&PM7Vnr^;_6a|ANtTz;#6KRtxG{?fsO)I>L7C_ z1+b-bpyVOo1r6c%{oHnKOa;^ov5-a@VS%K14rOVz4lvicrHw!ls?&6_!iSH zRO|PF2d>-OT7VPAbrBSW8$4nmcrNp%4I2WOX!9=_QaCn_$7gA>&5 zQDsPP16@Jh1^_Ctdi`Q4GMUE^*!Op+X(%>SZGai#f7Aztb17L-8Kq91NK~Th2H(7+ zA~b3g?DNKYnX#7GaMGsY&I4bGPD?Rp>z0ehoy*4m0GQ;XL#c{A_bi4hjgX^9JBv1g z${%Z})$V4)(acU)4}%_d4rzb|qd*(R3e3AK3;i-*h?c3gvbzU+M0WHH$ z&u_nSf1yPz7LG7+@d#a4SRu;<*2IO@d_#@I4I6^%4NrM?+_bzms4T0LMQgYlK;{#H zO3N|TBtu_#xwr6(uL}8Xm(hT`9!uO9ngL7olwJ4qqc*&2Sll9V^Z-`QrtEd8;~XC` z=T0pY)jUPCRdzgFQ%H2Bv9nur<^g4@IO-;ee`>jdoZev3c&dVULBt;DW* z&4c6dxkU|jQ##i113Eyk{bR^5uqwZ2s0H{1GeN#(y&kytZO*OUP7JjPYn7;f=1 z$xs&4f}he???q6aPs|VzLa!ozvdSIdxuiAA1qytI;aUKzfrCECxffBdA4(ZWf0gvs zpQb$j0ERiaPhaC~8VD}V@ ze^Q3=ENZZQ;b(aN01J&8T+#y0h7?n|F`YfxGO znhL&*W1qPzXoSOen&0(`5wyE)ZE>$(iJf_~p<3`W!5A`jW4dZFeFQ9*!Q&qhjd_R5 zHGU<36h}tU{Sts`iYPZ#4x$<`Qr%Y{iCT(NPh0D_(N#REj78bBpax!ee<~O+`}%Nh6RHcMxk&NLp1%P3cPDj!UD5G|YMh$`Tqe?B6r?;JM-6gr7!$ne+c9Z@X`qWkJQ7{?L1smwps2tVm4tA!(F z;#AHw891)0qL607BKgVq#5BGFMoihxUd<4b32GP>tOr+1?onBlLv+lV!kJbKe=&Mr z;yQYBa-Oglp&WC0tZ`8}O=zVjE!ua~K*K&PE&{l>b2BEde+Oh zn4!|7z&%!CW57Iy+v5KK)JPQzxqaJ(6TP$gKtW-Ef1nU+m52{3f>L-vhPBR$v^l^D}T>AHPfMse!U!Z<{-{_%uJ ziz&6<$LR%b3hgxao+8|fRss~3!2Kp9^5DR_Syl5e#FZ-+^}ll^1sfXvk*i5>M65m= zBIv7-e~YN#-bam2gD_9mQ4gk(12NpkpQU2|0Q2<*r9Z%G3N}h-JlwyFCODR7HBnPK zseQB(#LHZLFNnE&@dr5H((>@JZr%(^yx;!-CuP7jVLbz6VeXEg9OaFaK2>$m51Ro> zJ>`PCk%jpR{a}i*tOBQpEBRr_Iywi$QC>|he-o`iOgYOhQCRY7K2U$=ft?$tvmQX1XRgUG9^|`5WYTzUHb3+#*w0~nze?$eEDI(kgDi% zYxb8~tyF8oTWZ+eFFiY$twppyd0g1THLs4bFaT!Uw-maTsZH|@T-gg{@J9*cvDklq ze^_{`7El|zBiJEFBV3+w`^=m+ORDQ1FaSY7Xk26QJ%A7u$C%Ne%f?UY&Hx4S{$eX& zFF6dohlm>mOPp&z+{~q^dU2khs&KorAFQWvG_&*fh{zGcu6Ge+g&z^9!bS2P-~|}9 zEk@|#Cdx`HfjD#Uje<)+jat(W6pe3}e~Fz3yv4Gd(|ktF0A4Rlve;$CoDza?M(W~_ zu$9eX<*;XJ7V+cm=i?gM}hMz7C5FbHNavtwD=bfx2|RYvGqZe+9315PqH zzGote%^L}twN+ce#9A(tX4C+!+(+2k0;?En+lYWGwkX8`K+dVC+VSdwU}~|vf8!BJ zvk9Yjfcvo1p?uI6_`jGbi2+ADq^sUx!42mlwwnguokI@LTi&%ZBn}Am_u?=HqdKnm z987$G8c!0~qSb4IS*G#%i_lGuM>L9_ZG1pcU0b(U%ebphb`!xH2F}keF)QYevBxw+ zALW+XagXh}fmmlyP4CZeEbFMcf7N1FMnv4h78k>aa{UV|>IHsCBO8NRH11PJZ9x&=%Jjz;(;G;xy;UD9vB*1>RSdrPnTcHSRuZe>Z3(a#@GT z0JG@f=C=8%ctppT%Fn~}u1s$Si(!t0y^K=FY zN?PABQ;1!s1Lk4d?FUr=e{K$Ft0TE`0buTz_r$3Qw#B#rP!*fZKK!=TaEtkb;Huvk zF&cU(wrjvYGeR&y8It!34Pn0!yQkes8o}j(=k=abcmwmyB7pPI>fIlhKFJIQZz0Et zV@OFrVWhYAj1pj{aFjDeB}W*9E~Z_a@7`R>!051X<=5JmxkqN3f5quJ&SAstKgKcf zPyhjV#8&A={p&1e+%hMTM}54^d-+Is)gQHIw%~HzvhbO}S{|oina$AYBDi`m?hyhR zGqWZet$W0KU)(sP3M$-%Vh+5VDUe6Xs*rEZ0z%|wR4EEhYvMB&?TWz8c_K8}1#;U) zvHDG6tz8p}e9Na)e}&x{D&dP6veLfr6albp)L4L*fy#Frprf3t+%(F)LBmg(abd)2 zY}w3EvoRB7Z<&?)Q!j(-RMUbFE;)VQ|ee)6qFMfd`njN?&il# zwck-&um+{8o`3Q$pZs*nRgGGv5V5mTo^kri;ay-B{cHGRe__S0Sof=kPB=oV=48MN zs?Oxsy$_Qs4U%vhA)9#CWZPXHhm(&F4QcN-0Nqdxr}%M9_b| z%HmYO$n)bG@d8_R4Va8m8t9&*aezjuzmf~IO^;Id?ZSP;zjGL7YU#79;tVojyt?o00u+JMlHFhT#1;?-3&Q^Z2ps{#HZ6CEH_u8e4Vv^kYvM+0DZzr-?=MF3}2^BZg$ z8`t47ms;*1myF$!>zck*xM^I#1~+lbq{nc)NknXV?o-ZcBe+P>0prF!pedS7w=LADn{^o-$KX@G) zg&U;(p_t-8-B3fL=3rjjEh`g&DFghwBw~x$!jlVjDd`yXWbUpv0%Y zybj_Rxlup|f@2U)ssbqu!S6*t!dNk^8}Le^3k$_o9!aAiVmDQ+LQn~JP&wImtjyMw zf1vo&;fPw(oY%xa1v~zqd601E)U9&LW>9iw1rRSAy-e9GFYgNt^C$)nciVlu@xN@E$)%-7&?S z8}sgBhvmH-kmXa_{{Xq>8lXpURI^*d5e|j@j^j76Lblq+?J&u_);KFi#HE9WK)-xN z6EvF%73U-nF#=^xV7LcX_XfTi7e_p$+^Ey>1-jX|B0AhB#pU>i7fjoHu3r-7e}SzZ z1NjNFp#K1{xniBu?ii~G^^@~37Z}1@h=!t72akWfN~w|A9>`O}q};Lmlm)~_o^iyc zay7?>>0F*up0$f605XttX|@8MpC%&^L@nS#G%84 zPY{-iO_dC|Vqajm-5wR4zGVtpe`kK-Vuu6bTv~&bl#3cPgPF1eYcMF{upGt38iQgH<{&mE!$NAnhEd>7nD^}O(Z)uIY{{Y)Q=AYt0O0)r%KhA;_60tCF4foFa ziXuXVmNR#mTjhb*j2MRsQnI{D3VQ#n;b>xa4b{p3RGm#f39G7?<+<) ze87swDr&iy=B43yyudm`efX;Grn!uRtsmOlyHo@W>@O^(;NOS}ODUQwoy_56EF1ig z-Zan;J^qkN(r~ZUS0v0s(WLLh+Sd6VCU};WKM)v@0`q>1qynbG<2a|8bx>B?u?+_2 z1{~i~;wMV7ckv$vyR4+~f3Np2;>)^4jRRy2v-(XN6Q~(L+W!DBTOq@Gf3FZr43)6& z^?*cPDZKRkpcG|qBQpVRcY3{L@J9Gj%Hh|{28C<8%i;=!x6U3Q1sMx2?$72{LfN$| z_lVOF01NomBU1p-*B++{7)?B>o}m*4z%gdJJ;Gk{OSRkQ^_L0oe<7t8aUDV!L=FkZ~ee& zsl0`C+kYe~p$8S+Z5dHgEZtG`;R=F4fro0BSWPvf6qHblL7y#b5j;E=X^3 zGkd;#!&RspmeyMg{6NnJ!J98laE-?BvIiEfe~4Ye?z<03bQs+;8^SQj9{0qjW>5|} z`*)ZIa4gSKmlZIWuf$RC^93E;%JFdCp>!zy;44-5fz!G0f0UXZv?=3WCPR#BCE4== z^y_g07R;8QjVY(gA%J7I|yN4)?ma+_-0Tj zA4~BRj7Y$$x6h}Z<9WFQPP#aJM`x@BIcVYcE9z~ac+%jZA-uUxkiOS56blrP(V!~u zXOd+yp%fV}H~>u^cl9!@Uxit8_lU2Q)Q zTV}(-F8Op2Y>8g~0Eum5?J0D=ZfMuU#}O+vpKv+2bqwHzIZwn~v}KMU--xRxCvi=V zc_pnROfEz(@*X9CNCuu%di4JQsPAlQ(zUYj1o7SWf8RCwL)!qhO>awxoptGtDZh6t zg|{6svK5%XcJkf~+k|x-ET%0a$3Ig={r- z{-J9ce^r8Yd|49UmM#5kTZQ~fNSuiPaFK-vH-cBz?JOIl?$@^wAcU6mB#;1M0pv!6 zthxc+h7$RTENKF|yn@W}m>{jIJM_Aj0<`@LEG@Y}TWj1jGHC-h<_a2^&DV%(b$AZt zOlmBnOiOT%>3|0+-SJGlw-Bu?{V0@yQ1x*>fAey)Q5o|#RI1#=8rl91KgQ}0nP-3e zd(6j)l3OV>l#ge~v}=v9;XVUVhN;lw#KnSNFvS67W0_QSSS$PLS~Bn#8!-^K)7O3? zGsawqKq!=U4}8G1SQU#uGK_0%jB)BvA6B>wKrD~La)5%tM_v!_b5=uAvlU<7CHv7W ze{1#22Pm^lJh~|S5S9#D#h7}6fWmd=XRs6{YyDnjtTNIs^?~4wiHtMod)%o^%RjvXe~rXlyj)X#LhB3-6B*?E^$eP@q%GioNC#SC@TXe+ z;Iq&(w`u26h{jn94KYo%g5LiCh^6V2f2S`nC4gX9ANC{$uIpKjC6%(V@E!fPX2z;Wiva!QT4*M0nWd* z32g@0ANLXQ>>CRHyOyiK7PZ4s!RdrIO=s~HU@2ud2s!nLlqUjSfQ=VwxeLF%f4kaM zgU83r)9B{+)YQe^GZ5E@zG1Mntul;?rxP4+dxeVSHO5Rs++sqK-Mk*W%;l^BuO22< zZLPKAIOFXthJZ#+{o~sXih_(*@cpMrdH5jgS!PrA>HvDyv^>oE_f)JrvA(VjJlTQy z?l91sN--RXrYY!`Ai9lbxRpkVf5_lhdYCZ{T^7~?sPXv3Q=ya zEynW-xxoM<0-58u0fA?nL06wJ89{v1p{Or6_<^x^s)nl!@VSOdCQWd|J>0Zd-+-5U zx$!C0kXmT*EmzrBe9YySy~?bk0|QAYh5`-~BJmM}5AOjCW+LyYlY2KCe?)W401LcS zCBrAo3t+#Q$`giHJ2CK+GLQzuOUuS#B4D^3SeTWu;{8H5*)NG`VfRNHg>UL7!uQW} zFvbSPL*IgC__(>ga98F6ceO?A3|(-*4A5Fy#-^3>zyN$L$FTFA-^8dI2C1NnMZV{R zyUw7hTHWFbFqPqeE1cg1e>j%1}V|PC= zGEHYtZC|`YH5}oAfF+kj5hHY`8#-7d`syjrXz!_7K2d}h{u0SeR#3J1n=^H5zf&Qx zZDDlc_>`aP8i!x#MhhFj!1VwTw*|NHG196m*0VS68I+;5_aDnqfBSh#`k{ldm2WtMXiE)UNcz6}s8wb#E1S1K*%1QW6>jf0`#{tY z02JI)s!F^-2{KxY7YTaqzCw}53f2)Ek;MsVlY5P*PR$yY741TVn0viF7$=NRTf{SD6`I}%^ZG?`6 zg<;1rK@i5z=31p^%t=i(xs)OG1meBKM?XqLxE1u{GP8e6#ZNJAWoJkJLs4!CEc#RG zwJ$XsYAz)u{i2f{MP>IpOno!v8~W)PKraB%2vl!;vCA`;eRbGo<*;XLnkbXe?uY1FY6J z2nLt%WBo77825m)yX|1RvgKk_H|~E$HVRN)Agnsb#7%;y5cv=L|w%UDI&zp|1~T z+H7o8e_8z?{{S8wR}bbIS?Vj)W~|AjbiRq60$WP5_O6dI%mG01zepPFLdsoHh;dmh zw)Em5pt@^U>whsX`V00s%*eGXX)w7KqTk zvcyc=d4L^_K*g#<1T4beaTL*Bh%KH7mqZCje+|={i0kbOHtSHz@WUpqzYxJ|)W+Nq z63lf1V!7XNf`bt(LmxoKvBWK^`U=9eD0wRQm65_Y96+4KxnFppO(D63695YH0bgpw z1pSOC1Hwahh-+1xoXe3+GNa!Qh-}ON(Ym;x#`R0$oV5(oXxB}MEu)_`5fzOR{{UCz ze}%8p5I-A^kO(%j@fzR)U*4jLTA;+L+v*K+?g`YT71U1P=M26|WxI6s^A%C=^vR+HDUhfyf)1%p z7gf$T58O-KYa4Ew2dL?MtF(DKVQT=Qf7^3s{DobBP}&-{voru>RF96ztPHhn`Vy3# znwPO>wgLz>HDH_@ABc>i(o*?czT-8Qe&C&i8`>vrdj9|nwM#PF;!rnl#AeJ2sPByc z$ms*e65KM@&xk@PUf#j8W^2_{K-PjbFE1n_CDa)`n$|82S7!A6_fRZYiiHM;e_!n^ zxJoV=!&vU>3sl1CF=xm}bXcu{z@Uditic_KSh0CIF~rUKDrRVnG-PpU<|SsxC>9mN z3Tn$yi{fn(1B06!qsHYTRtpm|5G=z)KGDFT>ha|-T3o0eV}^~KMxup!O3Vi;Ow)C9 zbq0Es$e5XN_lx2pVrQrPDfDlNe@9bDwK?3gsFn1lW6#$Z`uhI>!twtAmDj(ixop1# z5a=yH%gGmtK4VG)lTZ-mDkRYv|q02wx4B;2EF)!BI0_qf*Jf5}<4ziZ|_ zH0%oB{FH)C6oc*H-|G(%hV9isFwGs~tVD`@Sfj%lmt>*S8KlFyUrtLT)Dixhw9dRrZGQJ6l3p?Br(CSQTyXNySC{vrxeZ_6) z(Ywc5tiuJSaY9}G(!)_{f2~u_C8(;#MIVf}9jytnDMO6ZS*(yWFOaF0Bb#Eh{*uPI z9HUiyevoPn6mV5|zCSQ!5o}j@?-1gEH$vZ;O*6C9ClFGhcSnMWbag2eqKNvG2G$$a zLq4tmK~@!Cy?lFtF~PbIS9JRsi)0il(Qfk0(N?31?CZ=fLf-=4?TH-5mK$y zg7^7mc$V}Z7v^EFfZUvorsL!}xC*SZm4HkS$yNQh1Vp-Que`WcJ5TnY6H^rN8iZ3d ziB=p870hx3Yg9M!ER=E>ivZt6)XDOJp_du&_NdZ4i9p$H8LI2~IG}3V=3W(WWx1L% z%J?6n89;3n&E>A4f2y3GQx^E^?-dYYmUY{hDzH@^KWMQix>1w?wMK?(&xmuWMO9zS zD)){hg2wncn{Zm@c@Q^sFn106flundMwi_aM)TM40`WAbH{1hNj+hr$1uIOge$W+> zzt%c3J|cxAKv;d|G*$Nk^I3-eg>elp2jT^x{{SJj*f7H8?08_#wuKkQNg;SPS+d{k#g84u3lK zMTU+ulkq((!^95+^VFv79K!9@LA+~*7I8&$1s^q@e@SBGdz9__OS1*fh*gaf7D3oT zg5w){`HnPHf7IR4O>?@3W6)48>cGs8@#t*$JhwB%$#Yki?wOe-ZuWW##$!Anq=42| zwYX6NQ`=>2%i@ojTQU?6LDXxUJwWovum`qU6h#W0hE6iyiLfSE`|L5%>4=}NYVGDme^HZ;C`9UqH~V)7-%NI{oHECp z-1|@uZ!kl!ty9Zm_NhP=7JkC(<{KXx<(w6#?{MpfY@hW{&yGxG6NaBm9ny(&T5Jo|V!c4K69qOmU$k%oV3xb0{jE(D{jLZM;j0@e$%yGRH9(8rgnk#o`%i zIB0MDDC%J2=}h%0`e5_*r|b6r0Oq&291u}hf3$yd6#^8CjC@0H1(LHE{b18jQZyBb zL zSg}+VF83<6G@;9CmE*rNdIOU7LkNR-e_Zi!dA!OTKmnRi*dj8tbBKh&F!+4Vbi3Yo?xls`&Mv=re?yg_ zX=WcWVZUn<5|r7`=?0KKY8g3v{{Xn)>^H=y#`T~30IH8BpwjqNW_YTE<$D*|RgX{& zuT;Jk*Ufx+m*~Be?-{&9U<=Sb#-&k1tW~fE2KCVdB3r>JRDh|`-LTA5|q{J zsY}0!MawTd!i~5%%mp(3AcvV%e}Z@+Wtk=qUl8Y#7B$Cn9>j*ID&>&Hz^EXkhsyzK z2>K&*guE&q01AAtZA#LVU*GWvf{0ir8u|uh=dXxqO-#X6iQKb@+As-!_R!d z;=Cm~e77~O>kikFVdoh$t%oLm zNvr9KIU4!gQ#FtXUKHC~fSUD}qgGvvZMfKWyQC?O`)v}o!tV`0e}_PzMKYo1nVP9; z32%!bf~~EsWsEalq%^^hc^krP+%{ih6J=(y^X4ghIZdS$D=Xc6M;_P^D~dR}`P{f6 zO7exHen9JTj{q%bHULnj)$iC{kuGjh%O8HB&{h%!c?++aWhth#_k(lWr{Y_Q00sr+ z95F#XF55!Zy~TyCe?wt|9-h3zx`DSM#eI>C%dkE-h?{~;f#Wp;6_JBqFd=lns+);j zR>*4Dx{WYpVJtM{VpJgF;yW@qh%`n_u)c<;HrZ&{o?~2&J%5#E=Cnkwr81e0NZ(T< zGBe_HpQcyoZ-3x#{{UCa05~Y-3sS~MGCngBJvXjRj-eq#2TY#H05{k{-UZWAHT=UT42r% zUyl$NAPR_?$mn$laIBt6(m@8uUEZP#QG3l{;#BxqxAR0EFgz_exU!-Z^1QranO5l# z(EYA6C3q~ePEGUo^NF#I5{Rftz(;x-;w^}(RXXSQ{h=Cm z0H((fDBIfxi|0JbivX1kaAA3%YFJ-|DD zU>yZa)mH=hY7F7Jls9AFF}91iWUxjCvfQ*K4_ku*iCOAmjUYSJ0ZsZ&A_hO0;n$>^b(ikpNCF8PDte!(~*6tK%9Zw)X ze^`ayxPw5H-!)JOUN1SAITGG$FkHAQ&=ud>070;}-?tG#O9IWsa6krKWL54GkvDCi z!_69P06>7hf0fc5&h36s#!%l8dem{vugnBkQ=P?caKe{9h?IvfVTv!}U7-N4w&8se z@%e7LQo3%cWSEM(n@zD@uHZJChj`57e=Gbfv>AAVwS-3_c$Gu|Wa13~^0nOWNKV+t ziZe2GWvW_$n`!&Yfs)YfEOT7kP#=QU`6WnOB`@6=#)eoC#v1#bLhD?VSyk3Gi_3{) zHo?gZwa38B_yX$#;IK+Xa@Rb5H5Fn7tkVYWVbB_K^5Pi7DR#E~K(i8DQyjl+f6T77 ziTE4Wv(#o|xj}HPmzx~sBNJO9ia2Omq_~bEtlTRtD-nVg1P}}7{luK&1D-~hYVDfh zz%)FM>Gq01dn6XA#aU4aLI##|b@Qi^WA_~VxQjZ=c8M}$%pj%f3H2(mFK8^7y?mFDc%pPX#`so#S z^r!qS@BaWpL2IJaJN=;L0fMaWKM@nb?05eFV0cuN)0*$suMstL9AS0Te{KLc0+jmH z9atDN<`@g2o4R>sOw~~eFT}oRq!LqD8?(Fh#~g#l3$o`6_|f0xOJb#v2NpIK&fHpxaCA>QmD@z zR3XQj)?DHZ*#lb(^8>0Hw!r+sMGW*i%vF?8qzao*qX<#Xd~e^0f3ey-9r@!@`hwmV z<4L^Y02rJP6`R*TGPEW4f4|-ylGgw!o}FKxe-J^jYEs$fTbB~DHEwEPcSak921h=Y zanGJ$DHM0l-Wm;WlUaP@<|i~bX?y)W%I%GpqpU)ZlmoRyO;A^@1 z`hzYN{a_)qt|dJE@iSF?bpxv35GchUS%_PRg&4Yp4!$6lnl}QqObNA{UF-1xu49H} zs-LiH+eC8G0}HeE$LlWzIy4@t1uow&n6eZq-g&>l^@|?muYQ!1@-P<&F7I2td?heKxu3t5zj-%Ji%I=qx~P=;F;>7RXP0s09Y_kDuYBo z`+1|!1byaE518QPm(he*%vcD%J}d*#qu`9S<(BFge_)8X1XF7N0D@E~fo5JIHZWrl z6vbTrC5k3^ubp$;P}tJ3+ne|Mz}$7+yzC!8q_@!q8kK$=>A1MiEPPG>0B%*Lu8#N> z%M`9@NKcW%O~hKd4)AZQ`@|(2k@%cS*ko1@vay&^AW~5r=~sGyTL3IRf%`&YSOW3- zAWB=He;tg4yw?)msAxdmtq;9?z?O*>XC|vSi5-A`YXbSImmey}ZySgiS~?C0cj6$I z7n~PBjy%*f%t2C$Zje?<9Q}@KFia&As~E}pZWuv;@0oBW@omAtm5K)gO>5KK za=dgeustJTrL=oq!_2>#vQY7EzpQt$62knNe?I+U27y9?v#xy0%Oj8!??1G}ZA8v4 zWR0k+0Q-Q$dfMO9TuNZvf|i`(`2PTN3Rb*>_ly+Mj%^M!L!pG>nvKg`FEFb9K`XdQ zD8zYuqRfjRyk-I%S-xh)7+pjtDmZ%ygoQeeNh{vs4Q>hIVAS}p@k^DPl)$)^&(qh{ ze^dNh=l=jOwgv56bps3lz}Dar2CXz+!aOCDzv-EF6ugN9%uHUuy+xUJ?BmzwTn7P` zro_W;hk2FgT#DPjPWLIM`k<%J>_HhjI#qc7>I1ui(VX$0WL2cKjUAfv0$8+F4_%sw z(6xnb+26{{S+c!HRZq zG2fbHqwGhG2h!M!^dxh8=yXFcv zO9HL|{U$YB-1WJ8yjIHMFKuE4ad12_*AQ)}ayXRy$`(Mi{{RrlJV93Yf80J{WC{a% zg3z#K`OK=|5v-_a%k5cs!rwo{v_}e6W(_1~yU}}|Ri`ykC_>HQ^Xgnti)!tfPHHlZ zau5vGQLoZcs)>tXvvDn(=csF}%!7K>VTM>Pzm;xc91h$9- z*-QkvbO4MIK5;)T{swd>f7b7oe#gwa>$c1L`hsSfxE8zjF-uZ3mS34qP!uoygf#i$ zIAh0TB)P9rng;Qi--)o8bAn{u@zgO)fP)PoRc&PZM!y&dR^j-5(_ov$w4M?u%ms>R z;OsN*8K4r=kZPkE653B*k1kE*5XK?6yyD{(j&+!7bCKN0XQ96gbK1ir+S*LW(wn~E!C z&$#5Kvxp(GHio0P{{Vte)Emnefk+L6CMiTvChLz+%7gKDFzC|6P7YJaR}E3(Yr%Ui zxx^82lfiIO&$EtVf3MIe5V@ej^mjDMP9oUP7+`JpFj8+sT{6hm9IuL*76Ue0Pb*BI z9;&fd)&Bt409p%7r%C%u#+fuPtn+7b>qDB+e-NA5Zh;r6N9_?E#X2mlUE4+L?Bf)^g+VMB(a13(-906_H^e~YXZ!Ffr&STGFC1+BN( zJZg7HBo4AdCdv`qO$sy-W@%p>r?^tFEOgD*@8cw9sv#F8v^WpJAB86OiL<3V_W&iK z#&>A-S5?F++kiYk3K`XYvF9vJNbs2Znwz!Cir8pI3%F+&3mIj7tpHiN*%5180t^t) z=Q8t#g7o5Pe=HO=pY2CS76V^4&EV4wpSy_Vm!_SCL0f^qHIEUNaIh)c1_E0kQ3N4$3d_ZA1t-KZ$5;Kt zY#hKb#(Vb)lpT`jGa5>&=9;sAtxK)BdIjC|lLShd8~k~dbS~EU_Z4?%3$M%p5l?h+ z4=dx5Xqthr$9Z*sH;_te(_;bg^CxUd#cVc6e}eac^UYiR!0*VuMhycsu|Az0K1&H zf@erq_tZUdc9Pv?#-U5IYgbKI^nlZNmD;k`-cFb3saYJ9=22IRy3_&4 zf8D=mLzc$%{pv4uTrS|nPrm&`aN-Vtc-P)rrz90C)TK+JQPT>nP%-KpKGg%K)B}lF zyh>|%m0$K+@Hu#Z?3^jqxZBHPl<< zLX3PbHh7E)VU_8rgu97NPM3_q46CMbuAG7QugqN@fd~B}l*Y#D^(@H_jL z*HBsqIG4L`9}@>fn1gIpaZEFMy)Jy}8*29l^At_oXfE{#au5-#UvYpgYd?HKe^;m~ z4_5?EP@4s6_Q*<5Zsjq#WOgpV0GU8$zvDPDSz{{YTwe#%qKLiC7cQd8G!4c_|CGw?Z9QlF`waj+` zh~|&*1!#=QVhpgbBSo1o#qdgV4I78tC4UFhCt~&imv~^N%w{8ayB6;6iL>ztpy7rw zhThKNBAUDpnXiRIZ6Swd8|^pdY7Yz%@>iJqm#2!)UmQX$H5;fMVT{NM3J~n=&Z6!B zw&!LDD&?#So}7s6^@d~h!hqol7E8G z`ExLh#kE_=*v8F|Ei2p<6iW)PpEO3qWk>A8hApz;{WyuQKec$5jup%+LEk@_av^2f zYZl9(M_RB3lb6&u(F_OE&f^vvFf_PFbEcByV0+~0aWy1>wTueY@hU_%gQUn0oJ54h zMd@9QgE7f~95@+Oyh@@WL6dvFNPno61f(7-SF4GZIe}R&-C}Fi1A`sFZZcBdi%$#! zEU0MV{{S-w9xS6yNm2>$d@}H@ZjNS%2`sbXEFdXUi2X3a}t9Mw3f|CcB(0PxcHVv9$OH6i4r7{L;Jt0Nn*;%Eitbe4Te9r_* z+z_^{>-;OsOO>06a=VoO0PB3cUQXvCWn!RO@CV8M;I`#9@yY(8W)B6WJmX8$&&<@S|eHi0Ft$C$i2TJU(TNuOVA1#F8=_S0@uk7G3OGr zh2bi{x7OumB+wN1y~l7ao5kbQ&!a`bg6<;#f~W@v^qDss8XVs4<9{SCKnvVdM~s$p zFAf*GelOfSRECf57cvMbg<5|NM(S<%1T-M4AY&FqB{UDty~GYUEodG4mpI{?PP<%c zD{Q8ZvE#4O0g41{(*FQ%G$`+fBvT^naeQ0Hs258~YGT;;P-d?KtNxOP2!USQAKqq+ zgLn(z!P~?@BD~eY@_&BYjaY`+1Ko4oLk}KDx7-tZwy*o#d0JC(Zb@TV{t#@&ZLd(( zVrW>Hii3y0?Lfk=Zxr1h+(ODq(~L`0>Z+?`xC5s6>5QhW_QWdi$>wFVJE&hU6P(K(E_r2xN5AG&A34E zkC=UcsL48;a^9oB_<-|`84fvVZ zJGiBkm6z0X!Lr+vJLlry$vtL=8A81Q7A-ceJM~+c26a||Eh3et#7OE@gVrJ}yz?0< z`ygxsHCVl7Q-5C4)IN?i^AJ-4b-9hVsc0+hqbywp9;3wYG(St1MmQoHZQhs!q@=CI ztg8CvD1*f^zl@ck_X^9xVTe-K{EKUg?sy48GrXO^&Iw|g(nP2tZcfKNw-su-O1yEN zCR%0kf!2RX!b3zj24IxQlu{tu5bbeO4|r~-vug9` zJ<25((Ev{Y_vR2&xe&W+7oIwYD*~ZbT;}+D@eCF#hSX`Q3Om%f0$Wvm8G@7*{J|Z2 zGdGVQA%FDhG05Ns)a)I>c9zS+xg3rA<^x-{UMGypFw=tx+NJm=HI7H&^De6Ttv>jc zA*4a=Zhb?vS*LaTD2`$#7PEc^pHs1B)JC~7Md0_OKZmFh4B1(I>Hw2RgWXgGEj3O6 z{x{+%5pXnEuMY3T0AS2oUjr7bp<=NqU2!gGMt>5Q8Qfg1RN9_9JVhfyD&q&9uM(uo zf!ti&Dp9}y7ED9Jw=^~~wYDIK6@ze)F2(V_V zvVT1=wW-+#j-h2U1!>(!CnZURJj|T|tl9GFFi90Ev&+oe!9WNvC;EePAie(pH-qm0 zP}(4yfNcuW5zGJv1Ad`^6*;QMBtpiMIqu;+RdmFy70?7G2x8jwEL=J1USovEhXevs z4PlBXx07;*b$W^10I|$@p~Xsk#R!D+7k?Ve8LEhBiZ-8lS*~Ix{jKpZseF zkylNBZU#re03ILd6$a7^`DbpsIE`6dovIPkb~(b8D9YpP=!|;`N^pJtVh9{st!Iab zEEvuglh$_@%TN?o6~CL8qUsg{ulF7(95k0PfK>=*a=ynA#eWcn(^vW*?jRJ9B7aj& zcExMe7hm=+%Er5Ye~8etV~g7N%n$(`X@Y{apbg{mP|zoUHhyDvt$YZ)gu%AI)URvD zlJc_5l;mxSa>|A5T}l&-`icPOvHLB?rF5=@VyyKTqJ$h8)Xf3mJlEeEftNFswm2@n zuJIEbVQ&r|{7o51_b(>AW--ZpkAIFKHtEpEsJb;an#?>H3aR$g4j?EqV))`C3XNy4 zF(JXX2V2wtEYV_*yY49p67Jdfj8KZGP-d_10amHp#y{l8V5(GIojUv6CD2_NPZT`L zQx;tdo<8gvSnBhuSg7hq3KW(5s*xNdk!M&GR{{A3p9Y=2^ z!8v)11Z_`6ycRDwDk8Pqur4@#sunu|dVpv;>p36Hdplt6SaSlho@EmLCJk8y^Di`E z=1?44h#Ko~?4}szqQ;0@Qh&~VAmZxSw>cXsEq^9tfgxln=R5nwh{^y(GM{-$4zyC9 zfpJvJK@44W+!U%%?fXNF)wRG-?)~rL3u-uIhsJT;!h54Ft>rD1O+&2vQK_nPREzrN$!Y*v(6 z!2qBPLnS)hLj_u<;au3JhOD@?u>40su%{H-)ZUE@2Y^4d8H*>_3HV9m`;zW>j`HHd zUYIYKfP;V)Eato9_UFlMmb8tEO9q&aLq zMp`pX&~K*dASoOTf4lXR0wNKfPCtoNBvc}`qrZrj8R!)J(&cl$Aw%k+R{GY#$2o%c zdu*o(>DibTm4AlNG4m@-y0K;Py#6Af)nP~kitFKK&;+p_dGgbO#t z!)Fd26-CitRrR@l*=!_c?v>^~-)Pv18_C`5i6GN6f`3zgoyIC?KVxRWt}fWi9d4IR zKXNYMd0toVF&v~QJQ_K;G#x2fhWv^@BsNjjuP&Pp6Cj#{EJ)C!0jM=*(BOLx{LE=Q zvdzIoBwjm-Yk_KN5T)lzK88DpalXIaA#M>xUSCil*kTm3qgsTrKQf~QWPHcdD{36V z>|%4~Sbs*aY^@AsxV!TcklC^&<9x(Qpc`N}$6UlIcj`9fP~c09V38Jm(ybG7z`0Po zvFQH*3Q9_^Q$Ar_{VV)bRSvK(PsuFEI2XI_F5e96If_nZyWqXC?a{z+u@EfYSiYiJ z1&R|7Y;Ka;L4P9w5LnU)SwB^;#6CcHRdp6>Q-6dh;#(+oJc{ZmaRjEXwwucZvb|H! zxnk{#PHVr+yt#3DW1HgeyFJ6pDVheX{WMGnGmz(qQj~d9c>d;apo1dy&2tqOR-Q2(n$4AtK%Wd*@sSXJ zk|+rAlM62}hZX9p?w~E3(p}Z$^#owvS}FOB z#;DTI<}5X_SbDimt87`<#y;|qfuSka_J8FiEW3Y5V~}emCpNKBTE_-Ji(&;0w{`Oc zTQF}LNL`U&aEOxv*3M&W7e;d87HO_OzlhTz6&Jd3Yhny>5WKms~)t04Wjw0I&{{`ozig;(t+H zZXhVr)D>rlTQq&3;d8hwUS>zeBWk8*w+c(CZCtynfpwqvH?6?7zcs|<4SJV}vI00b znB4*RfDl{Ba-JsC5*s?4G2ox{<|{d79G?4|!7@gJzG(fRD=4Z@v6_n^wuo0(x7-)w zENH=Z$MT#Bjz&Mfn3StR4WVC&e6yY- zt*g6D^$THj)DWj(V*b*IOPS6pY_-qtEWdcRtV|)FCLc5ij|c2p>Am z4!y+Wd{9m@$$F1la(~zjdTa9pkr<+E)xJK=7+!&m9Y3Q66s#2EfPa`J=f!>W^$%Oo zP8$6oJey=yt7`uM3^W-O=(B0XT6{%zodv1bGW7{+5quuC771w8a`x!Jur1llq}*&T zJB9^TwO8)q3yp^KUlGt2s46_38EYJH{KRt7qVcE*2whvpn}3%J0PJqd*^Xio&{j*R z3qWfCOYiX#EekTbfz(|*wE#`h*7qHmcIsRM4dxI*SgdCJLddN36qeE5Ty9b&@0c2V zGetl!*SIC9cL*v{Ia`Uw;{8mzhcM<)q{w2qiZ(<-({a{iaZw1VmmlJ?vnh+F`}mYl ztC!QNn1LJ`bbpt`L>nPR7t2!}z%DA9)@1^fumOYJ$0A~r22MHW@3>UkTG$`F2*QGA zc{uooWNAiJGgd%=(a`GbsP$dKs)OLRAssTu!T6Ry+W;%gdY8uDHyQ>c_HmeihrHa& zT4{_q341$8T+IIfny*#7JjRXkgCBpGGWG7(>0hE+5`XMsqgBaHRRXB>8?gwKslVU# zgcUN|km)&!h~>0HFZVH^nWJZ$t|CAI$*F0v2Tkvccz`M>YRr{T@}dCQeE$G`WdNXZ z1y?@#h^?LutH)7MMV6}diGUFeUQBbC4FFc#y+xp^5nEnexVe7;U}v+R(pt32JSL}& zt-DDgz{_`&Y8Ejj)s5wif%>MwW0hWGCDFXYvc$BKL)!qL9e=`Gvi?YP$>8`-Sg{?J^>R&z^54DNw&HpXujXxp_HfQh09b$@sZ zF!Kh!BC_raGQd@nMp>v)+(N(;HQaDn>Sa}kdLN6M#eO9$Hg-x}JVm;IQVGcePN0Ye z>VKjc&asMR6i?U^pG@(oj?!o*ZPt8DXfqN%-tJH5Kc68PyF7=KOV(*%;F*m%;wbUEna9p?W4c#R{U+F{h7 zx*cLXxRz->1Fvxs0?Dc|f`I<820*l3d}?tApcb{pp!4b>FraY1edcJO2|Za|Z~-U) zi<1#W3T?C<%Lmb{IaqITa?*o~!dNe%_YyfBF?uZ#g{wYlBkd22#W-k+yKnq;v46~U zFPJo|ClL||LhBG)?UX}N=uim^l~F)*aiZfP>l}u&TxgYa*-%#{*}f`RrAat>(apBD zPFzNEXxOkBG8f+1e0x4>=q)qN;*Cv-t4RzNuai4$Rk}C|UsZ@jRm=VrJUoXnG!Rf# z17iz3Rw5ICrq^`Rwqlq?R?$G54}aX6jdGY7S7>xH-n76=3YAMCRkllE>~%I~+zlFk zbYn#$fMnwM^SIDb{0#%?z4(Aq)r<}JW;bxO57tZ;X!B=&G{?1#aJ*v-tBcEZ1ouzt zEWa88TIDc|r-qrNYsN44iAx3TU#-N!J0fi#k`^kM3Rjhc3E)Zq`&>agu7BNs2l$KV z*^y!I3x8>$8l}MwZ(g~8V7S4-?jK+cZx7os)z13NalcE*23Wh>>KKX~5ADlIMPS_- z_bH0XLk2HfhXX}b?5CV?%$esgRb>NXi>=CCdclIjI?509g3)~o4dfhv$`N4k zkx<~@X%rr;lq_KYcVm}QimPBA%wlg4P~hjiW?dSK6=Tpui(^;p+Gnq{EwEOsUo$@t zfLM6aSNn?Kqmx|{9VVP^9v9T8M>#ZkM5zVQ#CHImkC+hiT;i{iFMmf^Ei1C1z?lu> zjrxm0##>ZTdvz2*UJZ!n=Li&6^DU{j4HHRTOr+q(V8<7`%oNCD`%t7VJeX?SO$zi1w_NiKlQv7oK|Av^Et-Xon>d1$72sF(aYR%n zR=(f7qJ%MH{<6#@#@q0Dm{JANb}V%Ro8DEO!V)rBSh&1w*;Ogqc1tsQ&R|PXF6#Kf z4+f6v>-4A!IeI!{dTllRaLN!gA%LP%0f4sP4^u&)WmQpiaet+~hftwoDCi>fn93Vh zsP76={O@-# zXa~<2ZY~UWnt!G1QTk{L3!c$_B2D|DzcEcTZ$uh)1$@T>l7!28&Hk}^5NA0F)-#)n z0Z*{vd^{a2VsyxD|qzmBwINtcH9*R`p_c zC;@zK7|ywlM#-&9n!@j8#=48Pv@{QpGX5gUWJ*xhe1FOy8dSm;cZ^0&gH)sB{11{U z$q2w-Z}Bz{R4n%B<})X;R*N>htV}6F-=9#X7Y*mRa26Jwc|QLDhyY`{;p!Wwe87Yp zXAG*`8@8@C!ey8+o;rxL9%bn$4F0-;6%o#O=ZHChkZuPly-KcYxkphA`ST6ob(muf zL|XJ3wtwSB_F7tF?f8jrI_4){C3Qs{qQ2j}P7?*3T_b|jW5lXUf+#ijg5WHz^i48} z-9e)-^A_(P8kev)!#i*)$y@{a2smdRjG;2?Uj!A^TX%`F+Cr=Lfn4KLl&aKBorwd3 z$pRwS5}S2>efI*GTK&n%+@W%m1R6Z&JBm;t$bW#UO6tDeqmvD2hiY4LflwB!&N=6- zK+5!~FIoISfWeAuKeTjJo7G)!j(*bgSK+=p<{}3iE!kT9L%D!ZC|41i9{~aASVVMK zzS6Go9h0#w@*t?PqqOM*NWP%tr zz<*iA{4hc=Ws9NIFT%?KTqsx&r99w>;EPjWu>oLl=FCFFlpx%A1olNbhM+c$*jhD( zyh{=Wlvjaj+U}U*;X~4BZ4J{H9Y7IGlm#_^xXovaSh`0+eaZr=WM4LU`R zYi2pU!w?HwUpvt$vm>y*>sY@P927JKV}I0XAhwE+BLj0tpn3_{_fcB(DX6(1ETYdP zdeqOJTmjN1rNh5~O=zbH(+=exr|iMH+dBtMh`%JEYvpRn=a|=(ak7ec<_!X#k!P~l$M}6^qiRGxRlmb zESE-;`-qf*#$o6I}VkIs_bAOl_M|)Ox!Kee9j(tv%{iV!VQfzorUZV{Zt%hp> z$ty-2hMe0gafro8RZ$Pbv=Pou%%m$2xs-XKz*kiSiHa+RT9rdM#zr%k(@Kq_PA;}& zhTnG~?;OC|D@xn6w^_k;2RN7LvVp3O9YJo2VWoRk7aS46?-VDRm`j0q0e^$eyQ6%C zeEuf@7KClMTGHr8Ibo8Hp##DiW}IO5p2=6D-1RMhm0SIBFQ_SE!TI6!3IS=fUcJL2 z68MHe%IQ}rL@0G}px7ZvIxrI0S&Z%x!ra`=PBl3h%t*Ey?mN@{LKU06okSe6MY>MM zA9%SZ*1F;)N?`XGRaV>jfGDU<_aJHz*h5t za2Mw|iR>^ogPfml#1K?!lYjDO(=JO_TgRv$EUOIS<7%q(FHKwp^cn70{m%?Fyw=*pg`^9tQa z({W*t{$tBT3aTsn$A5@5Ie=0#l0IP8il+r1k5PH*z5&!Jn%8}}jKNjaZo2;UE;y<; zhzs*W?JfQ2951Lw`bM@f2waHXcmeY1IhbGnE*m4@{y#`QGRX)=5BE(ik`ENZ<<$c&{q zsanLP7VL_%7Jtg!zocn!2XnrzTZlm|&4c-3D?#v4_JnlCjGxRI+HTJem|k6j0Vb`k z{8VwDLzDY(Qxy$wQl2ZHh(V7Anf>P$8?n7a)-W-d&j(G836qD17-E{NlOCf^6|FMe zh4C%c4{U9~t1O2mtj7_e-&`(pzY>Z@&eE>mJi!`M34cMeKih)T+OW*R^fa=|!7wQ& zTKs+C*a|9Z)qb*z&@@o)`B(~dC?b5-#&8X+ZhUAA%Stce*mI`|&(*U05Ok85!@~an zGNLGpXWGd8#Z+$Rx7Ogc}C}1HAzLu|Ng9 zEZBEL#D8dIqhXA>!;EH7X$r>q18sEjVq#K;Ws6S-S=dd(3eZWfVWZ_bmkjyx6@;qo zd@;SQ700ccEH$_S<7WBx)s&Z48=MQD2s;2c;xodPl`M9s02|t z2!Fq{4H~+_y*jNxLu+?&;lguKEUs%C{a_7-EDB2aXIjDr9 zV7d?QGPITeZ1Rc$3Mhxj;fk6tUFeD|1%SE}`nVifsy~uASU43yv%1r~#zWgf<^|j> z?k#{8K9jDXSp#LJI(fdgF}8|O_bwI6*?+JMj_(|MBTRGGYsi;pgvCRt6L;zrTqr|< z3%33p+|L=%g4<#2t0f9x61YC26xudMN2Alp5RqI5l|K@|q7muap^6lRmCsj>&2+*i zN7#6__u?HjcaFLKXFUR|0Y6AK3Te2&9NE-Vx1-qcs^S7S9!;5wiJ zRZ2h($8cZI2MV zSwsan>LSq51&FhKL1M}@#HW}k!+#Okz~F?^{vrznh~s}mxlD2jw#{{VsdEOx1#4Qx z-QV-LfM}xMOdY{=20t)}B5)SB)?;c>M#Ng{^BS=nRnqxGMG(Q;*x` z2V6E1!^fO@kD=(QmR1+z&e$@ZL2n*oq`t-S{{UZz=XGUR6hM}uyi3<%Y=696!Svb+ zhMzf(O+k87#H0@{!uM`Jc;riFuOHqW#3Cs2Ys|W+UQeE7lE(vnSN568*!K5JP#9aZ z<^XGGIJ5KC<2FuFs;t|4lt5I%xbb|%!wR&c{^D%W;BSkRkfTjBLAY4RH`f@379|Uh z&ZY}Oh0QehkHBOp#xPM@=YKr!Qjy|AJ7K=QIggue?Pc{2Zev~aD(H@7U%j3pL4y4` z`|nlQGA^17Xhq_%dz`^xzK0PFE?9v<1zbcn^|-?!Z8TdEG9fZU$joS zP`y9j#1&aFcpo18Ohw~$-XNNwQoDaY_Hrmpc!-QGtrjTz%2pY>Z+~+2I>Y+hPO-sP zSH35U-v0o(jG(Diz9sCns?IS`!7m%fgtr^tW+Kj>8LIrtT&XWM-NNaYns@Fn zLTscj$8ey8disA7?SG$mIJtFjz5NZat!m;N18};7S2ANuJYEjxJY(|^v%hy^!RCH|jpylVx7v?0bg)}!Yb2++Lt22Gq?NXIl}T>hBxsPAZY3w<0l zk}wt}+d04Wc!uvy3*&3gHK-IB3c<7b#YzCYiVoOeP~ODjk#@_QBo&419B~;e>qzuC zJ_yckG%i}JSAWFQH5GRM0FIE4vp#;?o1(^AIh&4P&LQ z@Ls+klaFefV5)L1;JaYzR!7VOpwYT%Zz77#R{jJEY$&Lj%SY^Dreaer};w(R%7B7o8*#VI|+u+}7| zG+4Z7F`T9ArQF&F6-yiF=Wt<;XhEw1__88HyW4hUev&^r0HnYaa7xUCRdq%FNB|q_ zN>kQ#>+L8px!W(kRS{6O@KySXV$2F$bxwQK5(e>8;Xi!hTGE+s0q?{WbI^y#*Qlhh z8%TV$lYiz=3`?S)W&VFzW@TE=8%}+0V*dbQHN6vLz;hK^_ALEi6TEWV-ZcBdQ1TGi z>+di?D(w8YznFo1x=NwdX(zzq&*GkjQ%%IGDcOpHbX4J_f4<|0DG&(L-abl&vG`1^ z@3N?1LERIgc*W& zzC8Z`F+hPO2=tYa-}|0A`4@tW6koq^ZER=@XA9%zAi~SrszlMhu?0a6CWp~@*)y+U zc7IvhO}QW|5QS{rj9xM{u6aM)SFHf3b}GBY<`GH-l&e>H)j}FT z3X$ROjEqogD$q*66}I~*x*&2}shyjklz-7MiLx&qtg zq6n^^+LYsWlF{`YVWBttL5YSlfos>eC&8jG4|>PAX-kqEi{JOuMW)pOZGT@qQAPNf znCNU@noq=Tz$ZL@V>|(9V9xpOUx<@0oxoF^u7_?vyury0R_rVEybu}$Qn(>x6#=c+ zAANnL)a?;_FWc`M7zvsk?0cFOT~b zg+Sq|mQ_@|R0@{SnMXHYv=c#%OjaA_Vu-`_mQ zg~xfkagQ*9KrNvFzJFi>SJq*ryR7G_ORFJJ1>v-b_0lXqEc5o3*Cj42G@aK!iGHLa zn|XP`1EHQo_2v<6SgUzys?Wq5CW2n>>#Snj`j~QH)5KnOag2HXB}}n=%YRb9Pr+&U zkFdnBy3RxLpO_)Yr-Bz3^KmmpbC;Nx8iFgBszCI`J7qt>Nq=Dm@lk5iGnlVX0_mP% z)`5d@RiM*#hTt$b&noENs^X;>T)iOIajBO)=JqjA zo5Mup6xVg)C|MNgqlOB$;;CFj2w|D6NOzV%DLaA>MYfix#%M}%cM}T&ZUIIT&<5rZ zX+nY(SSs%8d4HNpMan~0i%e8Qkj7iDkG4+|y|UEW<)WAxq0*)$5nW&)?9jgqw^ALe zW>w*I_n7I_Nv5oJsHXLx`> zbqly`NAzN9aHx}crtI}`6_qn;Pql6q6sHzuz3LYln14LzKUil1dKoM}1jbK#}S;AJI47=hy3_Z($gArFI^Li0@?Ndx8Nl%O&+FLp4_xk_pG!wH05Oe@j^ zP}X?YH-9Y)>Hs)S53zE}ENfE!Z#mc6R$0Y|A?Ebo;uyrSs17V8ohyV16lt#wq|2_X zM%vx{Kt3JZr~sHd_e>;^HUZ*i6;KxsyskK8Ak4B;r40EI{i13b78Qp6U=nPa-x~_j z=>5q_WCF+RP8{w#CV1r>p%=FDMnJK;086sco`0K%@+q{dFa*y!Zn>8NWc>jeL9&t44r}oowH@1mFKiUH1t4Ad(x<-7!w6S{j^UXQ-Zb1HE*J(? z;GC09C>QfG1!IL8%)7i3BgP`%1UFs6CnJMQKbe-rX0f7iI0mrHLBifwUVKMh)emh- zQ8KjBm~_3Zi#)mJCwap_9_1p2#xTsd6@S!LR5%6Zyh1V>>u>>g;^xtWz;GQv-IkJ^ z-9njZ=T&-^+SnJB>+u0vP)uR-3JV*>!GKofO+n4Ty0@QZztl3CVCP%Gk1;b;lm*%U z042bjy{g~)HYHZ)Slpt`k0&?8s}(2(3rob?i!weL}-8PXjR(;Is$`<%zw8rt#hJ8fOibMxF# zO$u9k-_1-2oe9RCxsMbku`^?6uv6#E6o6&4CtsMyk#;P13Jeb0<&W@zpi^IMXVgvc zcVJz%x`U=`~Bbw@=>>V4mGH&aaLV*FatcE9J0B@ zUn_=b%BZM24qUHZqRQ-fMwfDSbqlq94iN( z5|=eKp~tuZQ<10Kuxx*MhBC*@E3%22!MbxViq2tW-d=GOaElqI#}BSg$kl3j6&q z)_2re&EgCFAx+eyhG(}8%YO?VhFoEZ>i{raZuz{j=(3Y*Fu{=>?~K88mZn;9FJp}C z{b1HIR&fmi8ZSKua<*V69xd^Iejy{Y)xSt*3u%vzrK3$(>jXERu?Uf`5U{OBSP;s6NVibhP)baM*R#8^eUXz{2$E^<8@SH}H$2lnETz`u>i`lN(F|Sa# zC=?ri+!SD-s_}!|(*4R)fFbRHV6b`4HxA;^I#xeu2n7KRvM4|07wDOQ zsK;#3&}`l#(!i_SMZdrsa)k4bCZ2p41Wg$T{xo9qs8h~6=n(o z%R?+xy~Gran~PbiD(Wq~aF{ql^e~m`g#q(p6DbE|OY}7R_Z3Cy74F~{Pgn%6SV-pv z>;a+i^BNNf==@5#cE5P;4zZC&^8<-sGVA$g$3$%oY*fMX%w>I-0=zFHrxKB)2&r1x zRktnvk!DopkAGvglMu1;+Nq~(FPNEXP&N+Ae8ed16eKSWqk}=O#4mm#ql-5Oqx(kH zPD)$AZdltOrN71ZaRLHo6lb_qo>EfXIi?+(6hL0zh^$03>$L7!MI4p`lDJ@X11aa5 zt?d5*acr%H657#)`y^$T35FiVtd&d-!A>m<{KM>q(0^jJ-JjJ&Kw1LB-k51-`E||? z{wpwQmhPes%a(_*6>8nG`zJUNX+;i7#K5~AI2QB~Zs)v}VTIEjmPuSuPODJT>podX}N z0Ez_TXNgg4HZKqs%ZE!{*D+dM3+_Qx zTWnx7mTZ8MU93<8gtLyTsVXrm0W6CuK5v!Jsj3S-sE7$+MZjl!rhKgqF*Pdbf@kB(t-yT(v{dxeavkh~V=SQG{ff#V-z z5Oa06`1?%xwu0~dLnMphqXqlV+Fbe+rTrpY5+K!9y~jkZUnOt%hyyKYS8-5HUVrK7 z{{UYw)0ts~^-cZEzyOfwt1JFX08RmaX;)lW7+zwn-d6Sbl#80&WnE?8#0hHJtg|O- zahQfkm{*x*Lj#AOa}lFJLC)`6KO`k!9*gO>e~5;+vWgsY_lJgn0;Th=ro-bxF}%3@ zFqUG;g}jTSn1o6QS&gqTa8NT`7k|zO=vD!S>96k*p=O58zrVaGo0%@nwf6q`fmo2z<)vlQ_t4udfZS}c}DEkV@Z*i!mK=9%YQDfFk2su z#i;9Wc)4}W!Ol_uZw*9u6GT+1>f1NcLuZWI--$$c16$8$_vREj79=@uZeg5rS*~Rj zcUQRW(7b~CltD_+5F1K0SBO}I7YJKb&m6@rwzY^TUiet_%Vp-yNGt+qZ)|F%=vFnf z>Lm*lsw4gWkyVT!TD?VPlz%^zslp0@9p{+fEiAUZ^ZG}6Sys2cCAa`FMNHxVTXl}y z`}{qcM!l%Ew`>j=iDA91b-l)IU3~Os7MBd z0pt~0;Mu{r^&u=gAQIW&&0M^qa)&A%tyRPYNT<2{1kV1MjubhSlA0{sCOuiPu* z6q_}0&eqF5X3{`jODg#ws8G?1FOs2@C4u^z&)QsDgd>j~zE~-m8yG*BLqxl&$C$mM zQD9r_%q>-`r^q*5ve4lGPr~2gT!}z%mOXZEH=!&87h(L7ZMSf|ghKpF0^;BbIR{$q zRZcW05yda)%zs4RLM`B1I(Us$D3_qGqi#0~38YqULLc5^+8U_T6B%evb2G(2Mn^Q{ zYfMqFr6-sYk0rAeBCVyIoxc)*&{dtwLp|e|B=B=k78l@6@lo9-&?#4%)%l8y?=;WO z<5_Od@WpSeYEp?AwdOA3R!dCElWNm>K7Gb)2C{HBD1RWiSO%4+^8iqTw%~`6-QlPu z-5VDB3bU=$vysBqX#CgSCRqz56FDASIQ0U(l6XyJ$5$)YVk;Y1%?%)%oCbtLteHyu z%WX2?E$zducM5>F6{Xst#mb?|F=b_Wti&g|BjaN*8Zf{H&9>g22pT~$IAs)hMMK}i z02pt@6Msq1P++hNBZ|$QC#-qH%H{V1H4tSR8Uy+Lv*B`BzF9k%1#zaT~%67kfj=~xS2a^)*+iGOI$0*W&Dp0JReK0YB%7P|(u@P5)BBmTIJI?rz*Via zRt~#(ig#QU-g7uzBvYPDXUwDqv?!vhqkq&ISlwO!0DjN}1-9KAef&X?+TE@ChMg*v z-}5Ys%cg`->m75g*WO%6tJ%r)okRTKJ$Z(*)Gfrq#wPS(L^@0V}8*$xt1*@XAam_LOILSaTQSTp^smo~Lw|{ji zm(3^V_<*cyfXk2h1UOnZT2@d+uv`}W7_Z`Bfde$~;=g*m!pM|ZIQ3jg1vbtrKWVfJ z<*aA=#>4{AxHbsIVd@sqw4=lYvnHFxumDp2*EnA*w6FOqgm9*@C}21Cg<`(XQ0I-gyHHo~YFwZklt=3=cX|G@?eUn$@hDp} zd4h9NvvXQMFyf=2w9Ez~TS4C4V6LL^!Re=pd6&ad@sLKv1{|lQal`SMbbn~pY3cjJ zhUf#-9s>I3xF+qV%%Q7$@iVg!w1e}^5;F74J45r6)ouz3b-jf@p5yhpdR1?|!u~#a zOc#z5rr;ZH8n}8NY$CR7Mb-Xca#;~m=IiI}Db6hyKynMbx!!)jH9!aTngwjE2I7Pu zp`TI9?G{^tYV2el(p`l!i+?|}CM(W7N^R5u+;*$;72EYYnnP?g2=*8ia6^I!sloMU3JpP6T~90Px=MdND#7C}BeDPsg|@J8&mBSYstpG$H_qAn%h{XEVbfV~oczK9{8@4WRUmmc zEwCt3HkF`33r9SVV+}yHG|{FrSeXVOBi5~daWKW5p~Kp&U1#oBETx9swN;}4K*mAV z6Ki$OxJpA5F|5z62I5mywNw;ApXVq#r6 z8ka{4uADb088X0^;0#6(Jji~tNkEEx13!31DWdB~X1@7}igRF9{0&Bcw+jd27t6Nx zKWUy1$;E!}5!iFoMe<_(P0CoxoN$qxdWVy+$U(;rC_ZAvzkhg#TylUh*5k1@MX!r+ zo~jJID)KyX{w2-9s_njwqG=T0bW)Z#hH=7)-J0YJm{4M)|)5DgwP1iZSg}U zJDn-PkpA2&CY3_DYj`10CX8$ywJ%FfK#&MoMR`Bll#VE-PdVHTPG-UmDxB9n%uT>w z?iqoDN~Ihd?gploYbmv@JSWZ}V;uz|gKx|Df)wd#dw)Lf7G^fG#fNfjOk-WKFX$*3-xU%F2BMXbr7n25fY8!_9yq@c8@2#G z7B<4^VAo#iDa{qP4hk^FL0#+%k2-cCj?I7Apd3Gf29k~#A{tM$7)fhOK;aR|>$yj0 zGPUv@M`hLn4jOkc-P3)tCnZ zGNAzk8l+N%u-k1{i<)AHRZ`1~+6PSiv-p6Nfm9ha{{UvUYD+JI4)kIrIHDZ5}j$AAlL(|__Jpi?PNZuK;dGE_IuI*im^s&fATer69X!xdZo zYFSZhFxJYxqi8^t(;Tz*?po_jE?UiTFjB=Xv43u0FS5TeLwj3JGydkx6Wjt)n7raq zK~R6{Ct~wQ?H7{k60FE#sOA^RR@U`Api=|tT9t#%Tv|{n@6;;L70d>SSEw**yxwIa zL7~1S`?;+Hyz0-qQi|Df@1l>G!g&F`0{Z2QE_{jygY}mK7(@QvWuVHZ9^J5Ex(H=YOj^<3g$Y5tfc!y=5*}^*0tD+&6$cc&xazYRyjoTAxsF-qaULopYV#J; zEoOXwg)Rc%o#Jx{BS-5hfbkf}&S5}If$k|qdlsvNg05J$iUQlNE0|3}3#T>QDA-b) zar)G7M*>)lgJkE2P>!)`hZl#Qthj$(3Wg6_)w2~{%=hG^L8HrQUL(k;qKd9Ts;@p` z4(s5vkac$1jlIf1y;`A@w!3(UkQ~jJ0_xU0#L?S+_gRRjf> zS5y%yywUSeudy(w_>CDE`@zhe!1qbKQCj7iOI2#Jl#FoGEy90*NHEaB zMOFThC?!e^=^MWOC3#p#CO-H^UGR{~9K_E(lVtEEI z=ge`}k0RnPrWlUyiW3R5QDI;^y)TAS+l9&Q5H z$viu+ZNkq1X3v-z+fB=nbnAcbD&tTvYEBQ%87L5O zy3_F#&d47C{EHZ7hX z)(S$X3ZlGG2teULRpf4}G%o~EYr@M6!IeUX0BvKJFzCLDABjP}uwxHAyg+C}!0R8m z%zB|#E`z4;8IHBIg|nkDcXi$p_-}Ew02QMujefGV0a>KihbQR~6>(x_{dDm+%}WDk zzsz71o2O~}M1bdiwO@bcDimJKFDDf&3nJfb>pJ<4<@9NDU6YPz&A_!10<=rX%g4lG zU0b5XPtsaKR8TUfC|%+MZU&p)3uem9c%4oIV@-3243M{Nk0sVq5gaO5Tn*<*o~uzZ zCSCdw-`X9%4Q2w*jVEjeR9mn++pkiBrOso35y)OAC#vksC7geX5|Z3gU66q!+k%rB zG(Jd?S-~6XFI6tR+Mp*VJ;B3DGcLs!zY_Nph7vH_Sxmr|+6HK~hyA|OnAtErgBRXG z))$7v_cVhHv6asqMh%&wxKPRD!Tn2Qz^hsrQtNWgV}LW$j&lN9EiB>M?3U-0D=pA@ z<2#OY5FSo#58ZzfDlGp1s0!XgWr(()?ieP9 z&*C~H92%E@AT!b)e8CDCeK+>|U(9V0dpm=W1$gJr{epj*l(hcved3>Zp?pO7yqRsh z-_PkNF;ee8j-UWBvYIwW6@s|>b^wsLfk$;L9-%N-W$ zy~02$%28c0Rnf{U^#ul)8z1dQOs3&aJO?uy-jRP;YoC%AJll0o;`k+C*EzO~Z(o?* z-#r@#N^9VOOkrt|^Idp^PZ-rP0#Fp*n|(@9r93o6Q&xK*OTuQHequuCxJ#y>=x)># zkAE>49I!Wv=kprDg0*!K4^ulF#b}G_nWep>ii<|RZc?}ICz3i+ zU~vTji%C&=k5y6d1>j;e07=H*vB501ZdT`>&{?GgSk~VZL7HHj@-OEkWX<*LsN@)Dt)GMM~6Dx9We- zkEJ=rA`9gzFPZB*iJ?}JXiYgHi%@KpX=E16+{HE7L5Ho`@0nx@5Vnf|gkX>!&FHADgQEWCv>0Y*afq4*kl>iLSBT^dTOnOJ_V^-R*MiUrxoeKw~yK)p_Q;+8y0=x)N81Hg8i-cFByC@yub=z zU7sdtSFFuYr!#%w!5SgB$ew?j#1L3Ceyf<_Ln}e#mv!VBR_StqXQw0PJJEqd_msil zjMTi}8bJjHZ@(?Ux$7z#x0}QXMWbLk3v0~3qbj=|@r(Szi&ubYsc0qPYwnJ*DAZGDTv}_+BiWmX4p=^1&oG)}5`#>DZ!AIvGFj0SRt4h_3IIpxo zZi?$S?qTbVfZOVmiE1H`plQN$GB%Lf3cVtRB)LV5(hT}okz*i~c)yaEgb)p-e5gxh zT7(w(4d1BD&>2VRJNv-M7U-7z`1dmskeDjYk>9f5Csn%%XCZp^F^^3KkGxGJh{M0U zprt`=wV#;nYy+rOOkRH*jgQ+IfzUD(YMq5OSmne>)FdGjIC%R(mJGGK%7aT~;wBoZ zx2!7u{6!H&BGz0RRdz;Kok8tdvEA+nL@IVAbDHrgM5`p9uTe4@QBxX20^&e6O1Dqn zxo*W(9R{zII$iY`*kh?(7ICsNhB02EA_y{vM>H1t#8#>-K`VbPP&{({K$Mti*1ES} zXw8bN2Ltf_Cn(8b{{SU~OG^jJHHo^tnm!we9rj~7$i$Y@Xps!jcmn1Gzo zGBsS{_W~}E0^81jIGI7)5JQZDh79gC+l`&wZMKiR7OQjih(kx#@TghU$8-+GOj6?PQA5GHQSYYMi_@rb^-FgcazX=s;`tej#mW<@RO zhs0>wCEpL2;XQyT0X+r$h8!{2#-yNzW8a-Dy517#32<%f@4O4BByWU{~S z=2%-z4moE4cquonN&=AJAB+8CFo)ba%w~~ohud-BWr-BL%9Cwst9{&H-~r7)s*O<> zYYMe-XrdOSNyfGYvxj}$u0;`#9}=iFzBd4_TVVUjbyh>={C={VD24Yc#@QTeV+lI} zyUF`cKUjZWnmILdAe6kEGYLY+U#s=%IR*uVG(15ZwpAS)ixRBt-eYrf3ojW+QHF_2 zFuVT%aVWP)57~djw2F-fcULdW4?QuLxIAZ|a5~Lo#8tI(<%&sNXRrGJ5>zO*5V#16 zt^WWp8D2zFo=fH?QcPeMdb|6+U@NNthwY1&1uB0HP?hidr~qdanv`}cO)acNdW}tasB>fXilh95SFfTVp_!wd__W-teiiHZk^Ux zg9IKj60I7>ckWg1KQS${1tO5*mCoG31AhZ9?6r7cJCt5(@0fU$1~Go2R9d3tgmy;Q zCcBn^Pw!H;WEXyzXgLQa)uXQGc)T0KXR?0`l&a{EK!Aej{^Dbr>ks8G<~pIeTHp6k zVYh;t!GCyNOj$J?v~%r!a{>6dOfY$IxV#Xso`K2YID=v`@>B#%dE8>53tBgYXjOT0c!R`-TT2JQ3AhgFkX_mJ zXL7EZ++}KL0mQU2coz`5$`X{m@D;tnw6b)7 z30*MObUB#nq-()zs&QvoCmoa^Ob!$-aY13ssn8c6SH})^N9X zwu-*5=C5EU29AzCDiZKTmR41)Tw&{QI5ug8O=%l%I`={z9H#@Lth?ChC{BC?pr zOHp`Batiwqc-+3v1X}!z#YBl#%u@S5=@1Z@egS%eE*%X01a~QeDOa@-_DW+}eTdVN zp}l8f)pyPYVa3hVZRsD6nO1+I?>rFb!y0lvR~W znf6^vwpp4O_IK`FLk3AsDz_4l?*cxcm8(Qoig=DO4B1UH+U&tBvEl9#kmcO1M+M#)?(3tTSjAGbUxus{#!oBDe zyDGKsUwFkNJcHvn_{12jI8yAV&smLPw;OBj{xcVHX>TO1N`e{RD0hyyxPTW2%K0_U z{J~X4D6r|~xgaT(RxblLeR$&FW4bJLUyIJ-1rfEBBk3^k#i%Vl${E3|`GhS-!9&8oXhWP-@-T;K2BJXCX}l(%!>CTo zu0@V{X*@^jfS|cz%GTx;js>zh&1&Y@lTCb9nTU06gucW+e=!D%Xm_PcTa}AXK6lI1 zw!aqXNrIObyfJ_4#b?=O_lH{|0uURa%5@x@vzawTFz>@rDsV?}KfJ{37BdfGo^?>H zD7Ro*_3kH=qW-HHbD@2M$?6b^IR*Wra|B8mKyvsdCOwj+kR|sN&yDT3ih}6xy`;u@ zfG)!hxawP3AxU44*YhkacQ<|^*-VMEpD<@0Y0B~Z!!v&ii#eteD}jydF)-lOiwl9? zuO*M#1qq^pzF9&s)?MzRV;ONV242Mfr=X%5r zZ4FnBy}`K^Ud@rsIfj55)%k}qxk9Cp(`9mE%=6|aiG$_;040w>nic}Wg1w6K?ga%| zVwp|U;5vT+!i^SXEyH063!W`|};N1>WxS zy5izIyaV?27`o%RMkiucPU1Ahp~|gPe6ZO3pPzr&hU6uHY=cTHuAozq+GzgVp@ZUS z-?$D`XQx{E^Tdt$xbc(@M6$|&#VAhnT3vcW*U z^O=8ZqK;tQmrspFtgj|+3e5*_%Zim*eqN;x8@*!U1*r`N)H;WFy*Y+FdYQM%&1PVy|fZTpEgsZTL+ zer6e>QaRK|24cIxG%iGxg<=85+k+4aYc~aur{yjM=w`OVjR07oUnek0&~EIy!R}eu zEAj*Sz=TCTg<_#bK0@BImt)hc#PW4hV(mv3eq~GuwQ_2##YAN5iM$WkyT1@cX8?cW zC(Y6MfXN$?NW#_{7`xRN+$k@cu2`;sl2zew*C)6vrr$}O5c54)KdY6@jY{#CJcX8yRk*Lp>cWzUl`&7s#`*#PeA(Szk)!y%a z%vxa43(G&p=3Ag(u9)E6y!9wxld7~`c<=2Dxh@uK&B09$ zD5k3S_+n&QXq9dz1=YRe*%FbFV$1$O2!RQBO*0M6&{u!EQ0KS=Ot4^T{{Y`|fw83= zRxuKG3frKZD!bvV_YqOpdwyy)jx?ZwS<@+&#|@XyP-{zOZr4#Au*OEt;1aJTK)*j| zyHi%0R(V-lMivk?-FU6rRUJC--SU108AxEcZ{uXn_w(v_an^XdD>0_YWO!)5g>>I|Y^ zpa<_ME`d1@>zK2Lc~##K1pqox`b#lk{6dg3t71A{EVlmuk1=$v3g_65>nK<(-CSx` z7?uUp=Jm;1gfgAAZoXnb&a9eTfq2Kbc*9Cn+lPONQijqGWTN~Z3$Vnnpz(LVP)<{o zz#X!i@dYl=r_9B4H+{q$3ap>fG$_Cy9;J@*4tKZ`%UXe&YWv(34I=#BCTj0?>qk&V zuLD7T_i$wat56w65CR9}%d&O$ZCh9Otw#V2>+%mDdAEi9R)j|aQAu7t&BXRS%9H6NCB4cA!?g&Y5BjK_d7tZeEy`9)V(j8NTHcNLtnrLSj=^X`4NoPfR)L93Od1)>hzHEd88 zGSJad8!EbdhObzbC*65}CTXFHKp=m$CqtWf)+I($cSv*WxRgZA%Xp>4a&S?c0CJ-@ z3e$y6N-l=|hs4P#u^Sn(Tk}jOxK1C(pA#|($XWJat#y`L5CIO8FkTM4?C$%x)*Lm2 zWdx+bPQG8}QL}=qv+hdgVL&Lk;;s&83u`Znx8fxzRcASrtp|2r-cfef2UCA3!eo8T z@dn$Ocn67Nq$zeWXhX%0xv5Q1EV9+>8kpxs?MK;+DQ+>}dx~1;GzIX`VkK!Mtg$Eq zf*N~s`IaDV)9_w?CZ>y456@%x!~p9srZX~JI|AzTgHesFwZDS8`HbCAac{#6qDAKc zZ`z-R8Uw>%Uxdv-0}c474M2Z&r52E~`nG9%He<%a54b7=Y8MY+S>h!NFbv+WxcNF+ zXam{@?fHtr*oLx97fydzE(5To4nni+ia zZxit1zDO3vT4D35v-@(CgBUo&cL7ugsut`a&5u|X9ym}nXU-qeA=iJhfVbEJVYU0MGEeWMF{YD7lDhZ#efF!R7SR# zLhR_)O-hRer7F(#m-T>KHv4 z;%6vQ+Wc6KoK|8g!B7R156SspqCs0VigJw{^AC)nWZm0)He-Lp27wAd4~^%fPNm8= z$VGQW`Z^ zDA`?KHSrozEemTr)O0XZuQH;S#k=gOfEzS(<~buwIB$RBWN%dp2K#RR0B@KpK!6Sp zm3Sa!6N`bhq z=IR1+Ii-JRs6-n8wLZmuumCEIT~W|tE36jXv6C5@__WjTr~z+n!1$~D%E`hM^06#G z9{H5p227gecJu1v5DFDohC_G*ukK=9Ah(fa#|QSKWgr!IIPiy<6zdgx&zNRYv{`2h zYW8YX?|fWEQy1=JTYlv?!Fsn4L>H51adU+kt;~P63p0omP~#c7m0Y)po%N_Lg?{Y8 zGcu62_!*C78f^ZRIEY}f3OsE#Q1_`z7-_@#hzn4A+Ip;hsrmnt-YM%8J#J;AETz<5c4wfG$wX@Di)A{-N^&x6Tpw+48Y(@iOIO z;_81rB0FfA%`*r11E{W8UuGeQ#gNf+AC=<$%L(hlN}RV!R~vvCeKI;~0${5s67ga!1b6xQl=_w6cClKCfRv)m;~K%N zYs6K>FT4f|-YCo`rWLH5bSKS{=^!E-1!jL3-0*g75IJxPzjBx-h-e7Vr~X7)YqmQp zoruG%z^e;DabKs}R3WysP70S*h@x9E5JiAv@B2ZHOw~~=8UbGK!3y1F1Qt;S`Ou17 z*+3)}FNMZ$Jwho3PZtJ^=HP)AMt7i@1>y4yc(U-CP)TNvc1w-T*)lcFIX6sBHrqj@^M~p`6Xr^yd-b|j{a1jlx@5?FG%7e zrntej5oq7>06>$-}TZTX! z(YgC1E0DW6I}Uw8320bQ_f=yBT9<#MdFhqO1yEA>xS>f`?i5~IN5J3h0m7XVwj<=r zWfK1Y9C(2s{ZcROh%@!kDtlX0OrS>FeK(koF0D)Z)Ko}9jjz%z>fPG@x%|Nn7)iRu zpnxFSt;2kfY_c>7Z&dyw)|Q~7%@GqKGJsyPKbS`B6mPTh88l$4N24Ej3yXi+y)nbo z4z4$v{9)rvY%bosJuUvQb(pLH_nQ4CPOzq=Pn`Xj9TgOv^CMoFeZ6DY8CdaOF*kII zE8?uLFtm8_^TQ0DoD_s=(!<+Rd@hxv(gTfqnL85`Z!K90G;_t{YMWPkiR>FK4DEg+ zPGg{lcXY~(66mnv>G;%37z}@o-wHBIs|!FE*~G5RnniK^k-N>hX#n?NKH}MGk;mAF z0IM5EIcr{J>2R{CQ(5WMaztoCk0vvI;H-pNE9IR(?gWjHElTyca8I)nW(KDEfm%~l z!xgno?yKTZp>tupV=RdO+GDOC=`FWR>%q6ncLI1ao@Q7R-7yVc{Gh8i-EObr&f=T(_Y zt5p?E>Ys^dTB&x-jpO$w4{r;(3^sZV*>Gsso7p8bf7+Ny2vI9m76AP7%(nvWTpinv z0GAA$s?~IymxrEZhzWnl1BA|cagO7qDF(s~B^%p}dzJ#i1wis2t|n|`Dgx@0PYtrY zTOuLNF7CcJxHBB8WT&BZuBQZoQcnqo_lb=1mj^xhD<0-~EhA@!m*IyCWlNKa5r?~D z3u2f9N*4bB8|2(4FSRkGvtOc%h`W8|CjcyoS@9;}eQG{Tc0E!Ije|Y5dnlhLE!lujHdVH`$B*+dtej*Ym>~U8Q z&MYVmSB;OELm&oNt}0O6VT4v4%Ud?LzP&>A*m*tw0C<-y0ZY6*edP-@3#w76flp#_ zUHZ`h08nLC*>QhYU?!RDj}9vNx6-Xn{;!KJWna;DmRsH#Ih7IS=6{@a_MXFG68a~Sz(z_BgX15#w=Z~ zx6Pj$isTUnl~dq^#K!9e`|cTCUEP#&4Rx+1IJ`Y+s{Yi)BPHD%UjFgmX8{TA1&tki?&Ty~x*UGd zR6wKp$}DJ8RdF8q4mTX!fw9PbQ2QkRy=W4DKSm? zsO7u0$53;#=AfVhCqLd`Qt0u_1g0vb383*%4oZKQhq-tKibeE4eMN3&EnQm%^IPqS zH_$a5UtU$a{i(=~gH22L8AFqcSx+&zitou9twXhHu!;aQ5W^U_P+PQ4tS({YXW}!L zp-ql*CGRr?jz@rbPyF_I;@Z);bk9>N8(+sZv03xVMm2?Qj4-Of>h+6Og z+S6IDo6NI501QfUVw&d=Gg7615x)wm<{8SVK_{mwa&-YHbdD>*>?Jqi46IvVnmd2z z0H3ls&@%dM!)hV)txQs_U4T*x&rQaH*MPvtGCdugMz-`}t!^!z+FAqJID!@+5Ply1BUS@|Rt#`B&G9R23=T!KXIhCK z2L?U1f4HotKqYfrZ&117rt)_2?q+|y!3}?SmK4WeIDE=P*0=#ZkpkHp06yO-PCVfu zuU8Q!K!@O}zfz51idC8_PDE+=;wfZcq(nz84cD>?umz+w@r(P)b(lj;9s2+cK-4+5 zwl6r+RE>vfzEk*xDe6;$&7Z`u14SiK>`U>vi@KV9`Gd;)6bgCHz9B3@X>EVF@dyPv z^==@x$D1CR7Nv5RU=Q63D_Hm&((||#w}EfifQsdv4Cr;tbHQOIyL4h*Ra-0<;Zn~e z>ecBsd`eb@9I5zBroO8_9Ly$CQS&fxfY^vM`tlKo_ z_L=~21HY3}*Q+-{bUf}6KvI4RFAa{FOa)q@Y53R7wujNd*-wA^-X%Ik=%Brc zjm#5Ebd8;M8P?#|9A0hqZ1Bc%S;ZmSZI|LT*_28i2Xg$(=WaAO6Q1>)c!F8c4m(g? zLrSj<4Hg6XdyQ39VSNT`%zBl83>8RM`{p7r*cR7m&LQnBPFosphsT*_E8tti@=8|R z7OQEqny2D9LqMk{5qE#-gssK3yR|saB)P;cEo#FcSIj@7>`)woj4sHU5Fp*6|v1lIfQ^Ckh$-1$#7{^ zS1Y`E7)FwY#rtq$7xF=b_Rtzz52?gZ_bg~HY-2IFQclvvzK(>^;nEgg zw;6H7H|>FGcYJXK3@u@IdSYlLx}W!`>d{V7w?FC`Y}b&~01XO19=>1z!Bo?a`DD6< zap@>RC|3@(xm|w-Fzx>0!y`9W?;DgbjlTKnEKm}|URj<>1zraExcSf`!KSYt6q3YH zWbAi$a5}pyR6JuJ>Qh0;0^T|J)T+V@fYJhpC~v31GCHcxZ;xN6Y*1o0Ugqz)szKw{7XXB7{md~f3&a$w3f2J(f7rlYy&l{{S#u67@lI zT3dD_0#$K`slU*cs`=`_)C9p9*Zs2C&;>VRSB;OD zG%M%n&t^-!GUq{ar~CaNPB2no{d$j!G>k#bxq#9DBH!;UV9Y?_RxsSc^6_O$5TxtXu5Q-3 ztxH!zIV~k`=gh$icWdW7%t$T*t|68@G+UUM0?L0sYy2@sRL+8%6wl|Fd5|N}$(uX< zx{t!B%+a!?P!8Q6Fsta(ak~lfKN9^dfhge$6U8&G6d>r(if-A+r*IE3Pl($q8|G8g z8;8H3mZ}*Ss2-{d(Fik^2rL1L!}F*XL^0uv@YOY@FvRCx-~b}{SFhSOwN|Z$xFUe7 zkI{c*P!L3OT7{&LnmEpr^9T~}MTN(Scu~s>@Ut;Qr$zgjASI0n(#-y?0nJ*{H$_%r z0NAuc&I&Qdh`3w^jWwj}+*k3f;(2>JmOm&^Fbe30#7Yzt+%D{`{vs^UOg=-tqXAZc z0k`Sz#Cn$A7h>-nbu6GwlFPga!v?5WyiR`(DBdm@j6qwyUV8ArWTYcAih2J4X-V<~ zWX=lBrD1T|)S`=I09FGAhu@24JjWs;z&CfTN{cR7Y;Dvb(37Ed22**-Z^UbD2!LwM zl$7|G6BeRc8Xim!3kXXa$=z*O*Da8aHAzKPLz~~;;(Z#Uc5)7ZG2$`kECp35qK$vm z=8eKMxR!^bTX=dRnyM+-6y$2lrkhSq=gLk6-2nYf z#tt|sPjJGB8Z$n>+@ki9(D)5XrfjI%d(Q!P|n zsvWCjt_VfZOxbdMf)Jb-(8cb&wC)QSi&gL_{EV{`Y(&)_71Vo1rk{Uuv|j5_!OH@2 zWKm;M&IzK`-K8aK=HYmoW6`IM>R3rCAu;4WZo1sUSO6j6P&8*0_a0m;XwyY^=kHew ztw%j3PltERwgrL5etRsgrWQ~&^HNn8iVk-lKvOSrnm;gNi;se^Ha>ZUZFL1Vj5vM9 z!^&?xfJgO<|Ym(-8&T2K}!X9$Kd;_R*H-7LP2*Tr%u9SJC8fk^+MGxi( z&OuZ!IDQ5eElU)1Ap57Nb`XqCra`i76W%A5T%6MB3(u)004g~fYpCsYV@+3`$yx~ zZk$l(%%a1|z;*YPwgx&^-#kGu0X@G*UAq601pwlMa&nTpb+~) z;_;!>)D)?3208xRwQZ3yuAK3nB6K+EHg@@gM0MFrqQs6UgZOId%Vzdyg?A#4yZD%8MW9#xy10G;Q5)>^Db$o~KnPnEtsL{F&q0fYTJhOjqPj6P*%fZifJTbg!e z2D?NJP`)pT#L$nnYRl+=l`4<&uijKp#{n3*N+S3&`%1vdvYi3=DHU>5!4DkYCNrwm za4*C|sgn>)w=M2IxAX--$I%<27~2iOf(T=c+}p_F3{|lyHo_$|#w9|i&vUR|4NTSn zYd(J`5WL=W`h^mZ<1{||j@Kj=set+#vT|lo1qC?E1OaPo#`W$3MavHE0ztH@U$^?7 z3PTE_-X=wmzCXOPFoxdD)oQ*aY%?k$SB&QI6trX|X54YqSwN^LUW)Z8_EI;Ot_nu|ZlJbDnsjCP|{u*p&5N{{S)4 zK*uVlknG$>8e0;yn+BC|Ydu0rsm|l4h)1^izPXkBFhR-c9{{Ui5;*_j1w85-QN_Fr#r0Y9r^8}qWBcOl7 zIlHXWIGHnS;&Nf=ve{QgA&saKwJW`5D7}+r4ykLG8JCO*kV6|e#}Q5~36RqOeJSxM zgoy|(!%k_{N>mPYl>>)2_~rq*SB2+AILTj_R&t-!M z*b#Nsh{)1i1MY51CC)EGwJBOtVo`s<{FMc3^Hu1@;q?rQt|$T47jdbK@k~TPXIGEU z^9qKWSzoW(H6$6P#C9Wpd-X6D93ycekY#W^lQWnT^c>!Bdkbno9OdLgS)?(&lQ>g<2t{d4)pj4Ibbt0-2-oktkEL z$Icpn6m=$7wL+k^p^|rn`$B-O0x-L#@Sgi;*@efpGhYrPvhFM!bQb*mpy&bE4g6MM zhyrXod`zw5CLfCzEOg+HARm7f3Nk{~Go>m}FgV1P>03SVHc2+SaN*?nMhc+S9QfN) z5apn7vS*AMmT-I;a`aXJf(?IRuIk1CLN+@m z4Pk$nKJu$p&7fNEo**{@%X*};omnuQQEz(%Z}Z*4EqKKS`vv#s%=Qd{ek{8A#Ia}_ zouz9h!g`i3BNPkmaqu;XdP&eHNNZ}@+(HM1*`rQFzfdBDC>Fwu0e)%#Q7A4h<{?6=b@rckC0QK|9gW2ZDF_RQu*Y+Fs)!rKLW?UhFPp*Dq*fq?4EeMb) zkOq0yH5Wm}ng?y6SGVGAr*Aj9tq*oz*P2m+*tb`4XDO-qMIjcry6g~&f z@hW2vEuY$+;ktjp{^eqccr$(9!4|mPR3}hQM}vuW#09sMe@Q`MTV0bB4x73^SQkhb zGQWD%N|7m0Y6V8zHvG!-r9$V##=;9t`XR{`X)V7!Ms{gpU+_QNBEsetG{&A=m?17& z#TbeVX5M*%>RC-vVg(e~^9q2=8_HKdGWhMOlJjB+7yy6kf9?To0*a-Jl&aQiU))BT z>4+8zynL*4?KAs{nxV7FM#}Co4lFwOm5-fY^|@#>DOkg7c%)P@7A#!s%kCU>WLG2? z#gm8g%+lj6uM6H|bTHM*_?e)buo-dNt<1zl7QxNaP9DY< zFwOSe-EpamtS~NRnDulJNJEGw((?Qa;xDK)`Co!G69HZ>_RLYAYAdyJ%_A=SMC&o` z^(ivI>i+=2WyWH2WPS+QxD}jSu(KEWf)}K?74D%-6#9sS>pTAD0X7`aX#TN-F3V)< z5iWlPS}G(~55A#A3r&1f8uA5a&tBp=0BQFh20)jLYt*yEL5z+b7`GtW}z8xTm?jQM;@h-mMl=<;{5oO3@AmMkCT{dZn)vGnS?Sc zR?EJC5f)o`)t@k+M3V#VGv7VMs_^JlD2Vam$Rff+V&yc^Sm~7UX0|k7?Nf6uw3mMy zW}C*~AoS~fjPiF2Lq(NCWsNOjaT@RkoNw8fnFI5VTf?86#ysLSQjE1&*B;{q5LNIM zO_Y@W2q2QjFl`(xDq`ZvfiR8l86{ygSz++`ivkAl9hc16=0qw!c7NEHjH(fmoNVEbt@L%Z~0pzX8$>pHYPYe@!K(jnuIF^Pbd7yrE2-_ePA0=7vd5?=KD4Ytflem{+%B*JrQoTWX zhLj(7X==?zGD6NZn)1Smj>P7t`ApLS2eMUs#Llg5CB7fT3{B{9sNzf_E$jzP_bw|oRLxl za1x!-PpC4bd>nL*AgcNwdG@~wLW3elFiYB`Big%;44z`L2 zzjgXp--wsyh8N*ydhr{gDT7y?di+G@tFv7)ycbaM^1`{=A z&Y+?V(OKiF>K=PHL;dmij@#E@QYU@;ffX%O+Bg3ICA!NmMZ;mrA_g*QTF!{pN5WkJ z3d)OrKIKIzR|!IO}tjWNIJNi29b`zT`kPv$xm?T4VFx)#2T7Z15uU+ z40QQ1m=f%%ZP$O!CO;D_EN=&z{L8ZlC@51HH^grMVK6+wp@^(mOYuwymb)((jLLb~ zt1sNKXcRPtSyfYKuKA4sc0h^0w@Y$g@%M_moiy?42y}(Y6-IjMEfli6;%7?w<%lLS z*ShNe0OSoa0{wgc08zl8a>NRTdkSj)F~m(0yd^pOIDy2`N{%vrS1&$d3l)UspjsNI zNrbZIO6PMxtIDc>NSfl*DX^jdSg*})Uw0@gzb*IG#jaf$_B+2ahyl$7R=+HuIEN}0 zpo2Lu4uV^XqN%^lDnhl@UIkhOZu`bOt(2GG*s5RzoVxp5W09F40D&h#ustNqe08tA6XK(6ZT$2OgL zm3%n@jR@}$(maCCIUG=rs8S3r&CHkP5E6xM9vQFZB^!;|O_$Y6*e1|y;r9wHrGJUH zYu0dIWDdm?fm|^PLYh27bPn7YEaCQzdA0UyP^}ezpv=LWz*#8Xl&mi96MK%nCl<=h3UIw87KW`>I*0sw$X(a`#qS&mewKrC`t@JvX3H0ms6#g54C z*}=+ztM2^8W5pw5n$8m1Nn!yCyM3M_jfPNI$n%B0KwY;k2E%|$dbzg(Lbn<{`11ph zG0AIx3rL-&kwLJB1~p)HRp#RnMox-evkGA^5mDKv*$tS*XgRz-HJw2Mmdc$1jPtD7 zF-XlAn(Gn8rPX%JZ=7cLD*cEW9>a0QRp1@H7l=?rHf_d4l#uoeho+-;iy6@VNF1YF zIPQ~tGYtcEkJ?riF%E9)znJUBimCW#T7f}-KG|!=O+Xuw4VHSuK%m$fr{i#>Z*Vaw zZqmcAij|dH*vH`cmJzmHuz7)MG^JOKevr0hOr=-m5TL4vJ&K>Sz#(c}K3S$2iVcn0PYcIk|L&l2J*?N^D72Oxgh!Hzns>AM|vj$9dgW$V= z55!6*)dKs!F{Keu58z{{){+zN7x`ee8A4h(X-VqfS3Is&h$UgLR;$B*F}C2!06EwnG{$p* zbs%)5mG)-anliqdW9BLz?N{>NMEM|piqX5Q^+`kNkE=#hzKT&^srM-%!(yYb zNK!E|gtF?qcQ#%P0^~FLB+^xOAAOI+ahb}R_!GXET>@Zi99q1p>)a=WQWCLSHl6&- z<r_L$}cDy9}+xZBcD;rX>TVa!%h>BT%;3)IV zC+1twQh|JOe8PaP>-Q|<6{vj@hG4Srh(5yLVEqa%OT~^anatZ!CBmx9nNUc`-zZqW zthBqJOSD$*p%^G&hou6w0o@wF3A16tIu-TX+n=-wme@Eq(8W9*r{Q> zMP2fb8ytk=9}s3@WMgQK@ZT5Q)H$2yteY#QI-wjPlI*^F@8%nEK+`yX?kYjvs+m^A zqbAi^wYB_1}oL*~MFlU{zEZ@XUnavaG$z zzS#yVFU$?`4w}_VoCaw(UFM;sk0Cb0Hi*+VYJBwz7@|O#HTX||5lF4#&i??tOeNuK zMYVr(?*c?p+9}}2>B%0gaqo9+-`LkMz4!!C@hBB|^%VntYt%qR3dX(v0DMa|gi6`p z%oGjxzFTi*`T2=#QnJ((c@(=h_wxmAlvAHD3%m1XrHvTLL0{a&3VD`Uwtjv7k+o8b z*bm|*L20ULu3!#-hO6|LNP!>$oc=!Zi(k(0iSA_-Kz`Hh$5&?qX3SC>C#U+l$-9{yHS70@Uv)jpch7v_L9OqX22s5gkh?)4hK zte|`T^BIIiyS!WT_wx=9!qX5_K=VhKMX+5#y19o9tW)2AVHNph*h1po>OGr}!nNGD zaRTNkaj3T5WxM)u^E2iL1ge%x>I5}+0m}kr?qsg{lmSh%Hqp8-5wru5l~xIJwZsgA z7{=qs8XGPUR5OSbb=G(4U=f6NKX}DeD>a+ABrI05$?H%uFxs*(V>@CJrre_C=2_+A z9dB_WCKYXedWc}LRLk-C+{xw?3+=8qFz7+HtSb4%^SF`%hm!R$+yk-VllO?~WJUma z?y(E=aJl)+N;IoCF2+#L;BD7UTYjMYTY?f{rv)cbFY$aXwV=i$IusZkTP-ZVF(Cs6 zJ{RBSRWoo=Tw8-WV=Vv?Yzsk@>Jica$SVU}oLt9${9c#>n&9Jt9pE8P236|`&$!~v z&dAY$c{8|GwdjDWFJ}fwOx5m=>dkOO{fY})GhlI@yOcsu(3DgZQ^!o{bxomRT{rLC zOe(X5fn~#!wq24|a0a=zv3z#{91V8GK!eC`8blPaJ}>?uY|a}#xnB5mpARl_L+9c4%tmb&V`S$JA5|S5B`~SHuazGWQse+^Hsf)FMaW%-x&HuH00kD?G!ldX zpsKUpKJftOq`+>uUzjqg#-fhvd-EUbmZCF%*na3*H3NXt(L9_)%f&-l^pyNuAu%`r zV)v8n2f!ozE)7q@YvCdas$@m`WP6vDZF~jzZ>U;_(1Lo!)NjqLs;R!}DKvUbewK-X z0!7sIYUVjm%{KJrSOQ8Q!QD_mK`%ZBmf%xA1IUKYiDC-zaa9n&=a7S{yv%zo4u0T& z^um>WAzfV&l)|n{Q6rNK99`1W{mijWi)+MFW@1l*DO2;S^$4IFRncFQF{#?2ACg=M z8Os^&BGLsl9xL~boqSq9Hxw(9~6^EyCyz!8}9*OZKP$ zja3`CvuC?J!f#fGfeN?NDPYtyhG`pr&MZ5MD7xvLtX?%3C8!!!8)ka1Osu$6v(O7Y zOh+~pe7g5h<`}zxdmV>+s4VMs7Uq{DrhX+uhn5%cSn8qJxPl$2vDRZ$b(Y}g4zJlf z#-->O>hxz9&LdheV_?-}Ywaoozo;p2{=O#;dno41PZx<{-GCvaC`k3SXF(}{17f~A z+#vx%m1%0Iu5`e_m0O>EKXr>h>urx${aj=LrBV+Hy7`7FMMo}{*YBBg6)I$2ww+hp zh7DE^po@KAhEr9b)HZ1QH29p@f@CM5H1TD|0!6i*nkg%?RtrJ+B^KVUp?dcM^}>UU zRC;E^3v-YuJ)46jtB{W996u9(WY%0xfpP4NNot8&(E|I-V+MwZ<&~-XN}#20tZ!x2 zeAGOFq}@V`YW7@2d4>__U*hJ-;3l>!4AD$NJXI{bD>9b};!AHmJD8(-iN0KZp)3Lg z<=x=A`)kxpBCIrf!h`sTRagxkQJyhmR#;T<1mylcV?uFEfcSXp5o;`e&_5wVh1qg} z9JMaER!=91lK{I)JP4PbD*emS$51Gzo*RpT0*pR&`GNv33D1NxEmrM!>Gp%czWOV? zz@=b1XT)qGmlt|5`>`@=+`I^UK#Y0?zrPc#3|WQh{$g#`nc#9<9H<<%XYVQjZiSXm zFv|X)@-92FdE@hj^5@`1<98&$VyXoY znBlAbzMz3c)9CNZ7E^`23PBLdA7ek1R1 zDCZCTl!o}%_Mwm<1{QwM@A{Ho8^0AT6WR)=BFcIucC5^QtB3ZgDkHXi#g;8@SZ#wA z?TWnpOLZ{7s3$~KrG%^b|f4s10O5)?@2LavV~QW!_OSn8ovzNXOM ztQoHK%F{%DD!ipwc*L2O)7}0^A8%y=ULz3S4j{n5XRvT`-}Pv#0uj zixr-Y?~Y23ivfT{$cLyF{lQQURrM_cBK`P&(%2)nZx?=egc0;`Q{;dVwGaX0{X(t~ zZOY?S)NT~mDY1@o4ty4YaHEG_cMn-8*+10tnSiK&RkK|kRrXxCc7_<$gYP64#{lFG zpF~6xTe8&EZP?10fXLi194uZyg}iGmlaP3afmT4y6LL`Fq#tdvg2_w&09uWB)-`$) zc)KE%RG*vdY0g~uiZV6aS5mZ=eb_mzGZ0I>^G}M0u3xm9%Q-TApgbc60e@gZoeU^d zATL*cP7v-oDpba%#Nc+~UBqe2_f8F9^VB>}P-o&a4q=2t2F0Q-o;*dyV7elO;_l`^ zohdLTXv0~(L~vYW7?y_4Ou#cK9kFZJgIl0zI^C7zsEE-}5y)^MchgYujslUY7+syf z8^;ZDt0qwR0*3aL#`Owxft#U1-=1|V)H92J9G*W}Ks3iR6n9@T;fT|WJ`>Em6M!~! z_?VC`Z-?APi&o4H)C)msoQ8SgI42a8mdncD#bK1QR;qw?mjp@(VOq3&o0N=KVe(&+UzQ9-9M?6> zvc0*#gF%&gvuIx?xC8k2)v(_5~8@WkjKG}5vbn5tly8iK-{sprn-Sj9dV(N+DZ zn>;ilx)0e$^HH#W9-tl*Bc}BbCB@>Copb%DixZa78xXRgL!h9J!ZerR zmtB~ghO{x{f*ceD4RN?wU{kBoH1((i*ayxcVA=B%)vEK|>u*g;gBQXzOS$4Wy&x?8 z!O8r^Lvf;B&J(iXHVY7;&E2MvWTyeYVpM1bZtCY1)O0Wp0OxGCa>Idtiymcm!k}G# z^A&V28C$J=svenihR0vL4(xBN7wv)qoCd6V`P3anBW$t${{RpRIjdUuA~wd+{N)-Oehzux&HqEGS<5OAiWq5H%9d_ z%VzTDr%y3ifv+q5f7}6oT3-mtV>Lk0gUqs*v8w%Xb1K-@TUU=W0PSQ`RaRGj5E>06 z^}o!sLSB*L1T+<$O9DV?gV!(tWi4sOPwT`tL8Uii&+94b2R?YXk~VG+!p*oy(uSam zA-+Cy7Y}74G{)56h0|R8wFptAMu!F;lgx81VCkoMYr_f(VB)!d!7TD#a$@~P)SK>D$H*THZPH6&xF*#cm3Vh6`QyTxuIvHmhN`q5#97n9^1zzfbEEzuJ)dCPT{CV%@;U5Fe~e0Geit<@tvAhQ$%9p!?i@ z3I*YJUHrs?fW)Q)KzN$z@FH7-R4!G(d0?{CqknVqjoV~Eew%Q5%t^GZ6?!y$Mopq? zac!5mN#;`;G{Euo6Ncq0m;lyi!X6UCJ75|y%tl^1U@=*L^KgpUc8DoB%yR>mhyqbZ zzU8Wtlg1)lR;+D>vv-nMwE}~qybJ0(<0mzKt{I}ipXkNh084lN<7rT3 zyLqaWj_qiFla;!Y}u;#XyA?1nSeAld}456l!A9C?oAloJ%H&Jbota24yB1H?*1rXa? zy~7mXp=qNgJJfoD3Q!Ab+t0sK52g@V6s=V^2-q5bF?p?iBO95@GYN+voplPxoq)P} zfot}nz$)baC2t_tNi46Si{{yz~+=*_=~DJp-R6Pmj^+n_ufoH*h~t8rrCcvqHYt>EP}Qa^TRmO=U=gKO1?sImT}vdUQXPHZ6YVQE?0lM} zVO_-B3joKOq5Z_nQfjo_+262%jboXAE0odmL_ZAJfjptd!w9`_1?)IXahJ^I8xRX#3Ty zqP11unv2a~EZZw72N}m+B`E<_j&rC13BBL<#4r#QLxA7RtBnQC8SdTj_m1czE6LCA z1x%5fqy6zHmsrj@Jdo^v7Z|(a^DCm$0M7patfPQzZ#CjnP!*&o7k+nNXked!b$%fm zX+tT)`<@`NptRO%9$+eK?+X}cg<1-LMDPVK!<=_DwsvnHxOm?F+(m(S1y}F+i-KNL z-g6T-kht~#0A*Q5#X`CuHhMqaV70DtQmBHyAs~oiafxTn+CNjgdHc}vRB!C+bQSq1`-2?S2y>BL9PRYr%MDSrIX9g;v+=DYe zh9yv}0-TlA$IfP4-Kt^9sFcF}M5ktq>MD`SqkT1PG1?mPDmeL+3JbzJUUT=&z*h)@ zYp3;#;&3YQWutIxcz#3K2~^j|I90e7iG@Q8#rV;G0Pt-JP~f_x#%+enCpx=RtFy-t zARr}FO|I`HK|RTd=97L-CMv7DRW7ovFP@@z2e(}~wW>>C=6S*Z7F`B&?bIe&Q7)B+ zM;Y9p^K$&yJE5YtE=~Zc;?wDGxp5_Ey2>Ig*@rI?UfmR1HW|}=!>$h3p=sZkC=Gd5 z#5&o3=LkxGUlkg!4t~s1!4!$++>LicP^Af5t%@4NBv2?IW7s*o=3&h?qX$kuNXVEd zuz!clFQ6#3R~k;;UMl=V$_Y=eDbxf9njJUO4Io>^gXAO{vqr5~!tODxZh&@gU#u1~ zmG}Zzev+Jn#qkCCprvl=70}&(m9L#dT%o-meAn6ljS8rLetp4btdxD3 zf$-L;8uM6~bXBq~^j2XvSaSBpL(Hi)yHF3jL{y_Hv*u)|@IYRwvG-!;!pm%`QLV2o z(EZ5oLbwb1mn=bCJ8Q-uJTls{&K%JJPa22J4h+MhsZb@~1Ns;h)ZIZl)m_Ukf$*PZRt1cO7^G>?8m7>vEHatgQxFv6@u3V z&q}?HVMSCgwvTIMy1uq!vF!e^NHtVm_xn^b&_yYorf;~K1t1EuNIdfW;0#zdY9jaMIM5p4j2T3Kdf5!084qP&0luY(Wvb6Mv&H-~4r@gI^}Pe- z^DQP^3I|D=zex%UKt&COgx3eTMMog7rlT;!hTZQizQ{&_S_*m>CH0aA2I7(}t<&B{ zaU}z(<@*@;mg0mOFNC~5h*e>NR(TSe7cbrxI7F)+&HmRGMP(`%WeQ&y)I?c-R2Ue^ z!u2dIvak3>JGyFLS3{r-pj;AV3rgN@=fR0O8j$JvSBp=GLsIx>4oA4OlL`&sTKyiQ zwra2;hQ$ZY7%n!;wBO)CKFCb~3?aoO;}?%HqFM+Q@?1Lniv&*>*O;tEjGu80R_phH zf)oh*iaeOGlpHo#?1;>*QhZ^58cuU7F0GSSx-$AdFa;<8@7*RB?pF2fQo&FkzcSo= zKz;>(6(X|8prbZ&e%@s;1|FqpI6se2Yhoa^^WWKpP8BTptbK}lgE17))&Bsf4xndI zJ3zTL3eEtQ!xC&?UU9S|Z?>Mj^EqhIy~Br3-oAFNmhotLJstp1Ym#f00JKkfrSY*OQR?EXJV za;WLs{lQmj1WNwqDnTh=(~K-BLzJ_>=`FGg*f1vDWfPnK0I>>Jf?mq%T8EHbkJbw+ zGVC?4?&oX?UwUJQF!IHJ0uyHAV#9W-)!_MzXsmAD@dgG~^?%Q_HK9a2TXMu;tFo}y zf89l;65Cjo29+x+OsPubrY)Cx&U0x6N~|;CnNXQO+*GSsar!{2EW4u>EDA2TxFsAA zDNB!0sy9~axcX-Q01!62TfKOL#Kl_MNmA;8m)88eC)dx^{X?SW-OjLbpG7Uq#km|6;7IlEn&K7_snd7gj)C@wW{)C z`2O6j^Bq4(DiwmRjlxaVjJ}S3CY(Ii%yNfhJBc!c`>(uKJ8vVka>Pxs=3;OJTT$G* z+_qEH5R{eNp!tY@sDLn%`!Sdaius<@uM~d~$s4L*4_r$n3C|AUHOaJV5A}%P zXbFVifeqARO;sJV4Y+P4YBVU;o%DMRieAon-({o-VQDuw~Vb#p$n5nW&PjHx?T zD0KPp7gA7ieeo=Wv=#SzfEvVQZY~PAdr!0_q9xiZ7p5|#SI9E}i-cGBv!#z<-INKk z`3Y%D3f#2OQ2;`AJ|~n!8wVis03`;MEg-Q^-Zauvg#!uY+@q8hLFv|U<{dFWx&}`7 ztH*HGhF4gBwAbhLil&fc?;+tKaS$^^GksjS+JOb@NLQSj_i}`6fLJj3yZk{2i?uq6 zv~YJ$b1lojg^^{sstmNOZvOyOIx98yj5miUm6v!!H_cZvr$9=Y3w^Xb=5j7-D>rJy z_>O%K90vEJ&bJFOi?)lB*{@JUC>DsOx;i{YPPrj}W{SEL(Z;13B9@QX4i3ooO;cO4 z@NT{tct(SopasqLIgZ&$GJJ_1p?ujmtF9~a3n~QhlW)v>acC7!HOuB*(qutSg_TH! zr~yUh@*lP$)W%BJUZCLK_FAkCg1_2(8By&3+B1Ny3q43xr(r_T<%&^ zxPk6}5hVoNT2j`UYPhHy%L+sL;$wvt>n6MEIN2{{nDW$Y0CH#%_~Hcs@Et%d%F3>P zX;9F+piBMrE>lY8qjQnU-`+D2XBo~ulCSK{L>7kMd$KejF9dpr55%O;NVR^^A{}il zLi?yLsT%-&CSf%Os{Cnt!8AZNL&J}>0B~)8Mh|>MAd?h43T*a30e5v=J0VYT0;jtB zZ2V2I%$$RZbN7JaVUP8To=+rA&H=$~A?f-Afb=axXZls+5cbz_7`@9wlP0 zN1iHaAS%zw?0iHPR*VOWm&+ZX<*(Wn`z7>y(D{J^DT7GOQ~X5BxkGB;48lhJWgcID zFPI9+ZmkQ=7H8&M9V*~Gmh0~dAh81WDO~-gpr|xh_$bC3^f6X!rCI7Gm19!-)+r1< z!!(HJPH^kgv_RQyyUE|HjVa`qvv=gtS=7xNX|V=#MP>pfJmGb6XKOOB?h+#dcv|KI z3~0i-yJSdsMU*Dly{Pdq%kp7-Ywp2+U?vdYQ9fWFm>J5=e(+}i$yIx`s`!f@s7MWD zl)co~m?ceiwmzY@AQe_{iMQ97m|2w{DxM7P1UW+7N16k~8yZ4f-IVq*)zGhBx!iCGa>D|lhf9AYaTTL%_@v{if< z4Z^HL<&*6$Q*%T(7f*&(C1)r2Z~K_!4N;Jx?$uU5A0@T z;Du6yHTEJQDr+o0Fyov?`6bq)+Ob}EmzD}qs^8yg@g-MvQefb zLAozEm)6>1@c5T4t7x|IE7purOZjE^*>noLXB@-;Az61tHyEvH%7&qTt`?%s!yQ8H zqqRzD>Y}pp)4fEc4y<1%(`e+^tR=C)*ySw@PT$aVnHo zK(-}@HuYDliVC&%_4-R22xkb^B5s;j$M=ux3kEgHbLLX*rj9BxG_LM7K?^kg&=5zg z7o779%DOo&XB4tGUiyxINr-Lf{6gV1z+P+q#HMTw{Jvrqiwqz+g6@vFf;M99wZ>|* zaZZY+i^_}P%3~8WQh|oLHowF(EDC(Uc~I6EFIozB#apfjubz}0-Vrgz>-L1KGzK_P z-gBPd0hk(V+@weyV0=J74FGp;D}3=Q*pi4Q?PK#AyGl5G;5`6;MatG(y*MK3Brj1B zOk4VUl*&MS`le476Nk#xgW-bBF{3((i|8guGtE6qaH21Z@c zj6~gn`O*VSoCT6!_iJTY*3YryQ8y^Dxo3 zPFS+A3b=;KsyeHegq=m;QKRuPbUJ}ycKgqNFl!>`fq{3*DWVeEj*Pz!Lg5Q#6azOHeE78gfHC$i=5G_mV)U-P&s+7@MdEYHJnn!d1)+!gmD zP_vBEtk5j=eS3i+6qC?}Z>oL8r!>U|`3v@o#35`8@}T(<;IkTAIPtVPGqXTyEs0K}kouJ#^te&WB?Z7IN*PrNU4ki_+Fejyg9qh;EGPgp|}9acxh zbKshUkpXqE(cg!%3Zgdkd#nk*E+lBi(KTUTx}KwG`+>d}VYSakF=TYWMl2(P>g&Wo zFzGsatT($6>|nyqbJpb)c+kgxYLb=YsMbhr$a*jm;)F!YYlrYkx(z7U31r$;5M&Pi?r{}8SY}<>)^O8~Vg#z9SnCA%NH|T1U&?FQS&PJfw!Zc^ zS-aVO=WZd~HU$sjGl1%zR(=U?n75PJ3a#z|Sn!|&4MK*1=Ui9p#-Vc|WrnX#eM~qw zWyuCBfDL0GGRIa;)B1hl2}P zJo6Ax5n8O*{f__`fo$dtxJnm)gnVrK%di2#5FuN)U!)?d3p)O>ia{=xWk%jZnq@Vy z#ns*~TtyrT-U`p{P+KM3S$U$p#LTA$lbpqcby()U@{t&-GS+YH_>R+PL*5)hV7iEC z{BB`okc4YzRbQ6o2^@e>e{n9QfYV&Z2QbSvY?pmF<|r+ZIkzlupbZ9p4$u?`0?Hp; z(FGi@tS4AviL=4K#NL`L=I@v9%+ii{yU#z;3%f1l-}~I!DMyAeyNO{|%P8vN!W>)5 z3$i2IMZ?l@gc%<=iaay|(_e@y$OYaAkyTT2%)4N%dWoEN_21e71$r-h9D87dGVVXN zJVMlB4oy+`B8NjvaAM+ro&NwxV#--4Kn(F*c=HmGe*>`X_DcAbnm!wAH(!`-v^X#M z`SSp(8Us+fP&>>rv`S0UXE30yK=Pf1^|;njjf<*-?Gcrju?8+>#8bBAze;+aFfIjs z1knV&c!7E`J`(G=I3tDybBlnw%W$n6GcC%QnDnWxqg^k=qkM^fRBvN&azyUmh^s)> z`hudntF7E>_G;o5%7eEVfvD_x5||XNZCTcU((SR2x(%i-!ajr#?BBo&n{iSVCK`@AZL%BEai0Vkn#Mm7h(x5t-hLt&G!!q67@-qE8}#=924FjK$yWq` zLEt?DScNQO3Gqw$j|2e|LBp)$@hT;=q1_k2yMb}DTLpuB*i~~aRwA)HaazqBM00Cb zQA(@HVV^N#uES>Z0kLYlT(Ik@5kMa~-B$AMr;Mwh!$9NS@np2*g1fs+NMAjK)QBU>vQw*wgQy9 zv1p!(fsU+04_@MQu+_tWkZB*Y7+6=S@hkiBz9T9*)%{@!nL@UGn1}KWtUq!I#F;8n z#q%)SUUa{4p~>ZZJ1>`y!2<|& z@{Dkg#-DJV>e7J)_{6h}7n6^q`zDYn25K%8BC_j6Dmid9i2dXUu&}~~6zvzaIKVfo$+gNLH zVYR0Zt}qV_uH z&|dBSWk?Xvj8#)l!NaJ^sgVJWYmq^_nvTE#_i^OP1tJ+krRBbEQib9`zLcId8@Gvn z%ZBfZ!z+lg;+>iDU}ZpZ(!sGr>kY#S)GmbK0`1)-pgp^?c@ZCv<`AR~;yk4vft1vw zz^A@S`S&cTJ05{qOgHS5N;zGV$&Tuxvxu;;?%Dc8>fKgvtln?3S5-`vj0n5(62Zby z6u{F%(SUVBQgT^O#C>f@keaK;n!Lh)u^~dwF4;dCizWrF+gJ~t;fZ?5-KT@ivDzxe zfjrthy0N4%--(l*Mp*uCZ7xJ#%h z9&4CDWUDCmYJV^~d18_9Q}SHAtyx&3$lCWr1R<x1P~m`FDoxoSNI8{Y>%)e{+|%yMr-PZ55MgdxA(nzQokD~en`Kvb3s5-j1Do7Ri^4jW#x6Jp?RjPZ8PR-8 zfQ36<{ve==_%$d1(X4R@dM2<+c9VF#R6}EUE>-3$jRKv6D&6mYH0Q)OjD%b%6{R39 zSSmrwfOQrwPOCKn?Trqz0;;5|dRTS_Y;LV;5!WrYeqz-(=>BQ}TL%_#PFSqK@65ij zXC~MFN^y8Bhr|dN0m-Vm<1uL5vgms1B9JC4fum@^X6y8f1`g;vzC&(zt>^!7oa3`3tMmbkJKd zz$Qjy6P62EpyT3Dios6~vSWX=Lq@?gh2v4mn#R$6p5XIql5FYj;021of+LFVGhvWL z`yCm8gkl_jHva&)fEJ>+(7bykEug3xr^Cq*03JpB@3~}GMMrloREpOFJ6f&uYBgy*+r{3e zh>B31*D*kq;s=uR0wX9OmECXTlpYs#55|5fVY%A|y)|$W(P9f8g5|CQM!ud%&YE48 zd8+>an3Slthv?s#u-a)Pu3xg4D-CNffu3cgzbSx?sbgT$MlP-$(A{|>cvKh<2X#_} zqC_))>6bl9QFVYkfSh6^FlchMOJvqPkb!h!)_x!(GE`O8o}GG+iiES{r!d@N7hyTD zFVteMP@*Bt*k|~F2E-ct@@ghqGOxfzUzn(CwMSO>Nso`b=ykSnifN0On4CMA=DdI*h0+1i zu$_yo++_t>q2*PR_JE_%Sjtf5%mOpRoL;(SeMO;ptljAsY+=-Y zBhmYvgu6Y;Bx0^;=`OxXmZ38e`Y5aWO&qe2d<2L^a;G{a)x3~0;NWaIO5Wj$>)NVp zrin}r0}%Qj-XRzBfjH}FX?<;<$ig?{WGx~kg}hoHXXag}S5W$J>X=xp=2CVa$|;D* z0q9eHrUF$Oo}8KVR6KgQtl|kqO9o$mv~81vV0-@nv8sY&W&R@U*tfntLS}BO`~A6p zmB3QCxn>J&CMezc_X6rGS8h7>9;OY8#9}C|emr74#JMdzefZ)Op|VnHh5r7LtV$M? zEBlF5Hs=OyQrj$4sZwe>)45N7V>OGT z;t0h6!^8pMlDL+v$8i62h!z?!toits(_E%Gu&=-3Hl$?&G!3rYb@3I70jfV>5N&YWB;RiMGtP@{C{ArLdzyleTDL6zRBAW>CkU3ubHAT;e? ztZf_7ch5D%w3P!Sb28PSz7ErK$JA^P5o7cEw&H=ye%!a^& zq<80*qkJ4KsI72B%bOtiY6hf}_%vlB##%Jc!F|D3LWLZt{ok~IDuXg{S=q)p>Ik@D z#8bW2qq9+!EiiMMF!iVpyke?V=U=Q+KFu zdm+E)nu!@f>|ZYg)<_ce7zPSE*Nogm$(V3k(zM()A{)~Z@jz!#8Y)o(SyAG#$1`DQ z#xBM5-l37CAgr=~{17XfCVQL|pkz%3ckcK`PxUsnVcu@2$uO6j4q|GP*^N}cDCQTT zly>iOn*bO=k>FE`i_SbxI}L9xMAhHiYTsBBiArxP&iE;ckwE!n4zzNZ{`RM z5lUIoTOW7@_KOSenwU8^%)iQ91jyFO;nSQ<%1tz1D_QKswjFi>RyfVq#6eIT{DrH;#ahVEe8!99mL{Ny`C;l^np}5tCNw@o}tAZZBabpzQhJqLUjk>J{X~;g)IL7 z54kaakp`D%U=93)a$qd&K8Nip5flba?(q6z3>XVr!l^;JVmay*PWmZrdxVcB25#vR z4mI|HcWJ9_(ia{oV(Min;C@+v3EB>iN-+JSQ)89S-JCJJ^&U>vZrr5{aG^{Hc!KLX z@ez*B0H=W{;~`LLl(bdWTvvG_qlo>Bqv)Bs5Zl7yXMfdea@_(sv{`(9!+A(Td^{JCZx}JauJua=7=yBui^y(sPK4C%=^j$ zt-3I+AaL2SEQhj3E@=GyeY{8VE!e4 z8yTjo^1s*NmVEVNkyKuP67C(=0o{KwCcmXG#gDScum%;ry9z1nBd%1|fx>@MQ;kYf zqs^Q9T&&7gfYzvF{KExJnfRqDLQ11?#` zXSsNVqVA>PfF=#+JC`oZcD(%RA90(1%|gPq^Io;6CtDKGen5b7GL$RIJNy3tc_J57 zVNLsSD(O|XxmVQt7F=6j<9rQ^#Zhi4B*!p zuh%_Fq*oK|{L31{;4Z(2V(bW)#eaRv2`0eWxI0L{2y8^f^%YSxTNhk@C9HtRr;9&` zAUTNShLdY}S?Uf*0`02v{qX}9pqedw#vFyP%hxZ&$#5gcA_U6rgv#6zifG&zHJ;9&>x~Y3WPI;|r0#h}?xADWeN7u36d0J`MVR26r- zfN^qSrA06wylTsrOmCzKybf5w4`9`m>dDC z-q;i=L-AD~Y=e2+7bu3F59U583coVuw{Tf{BGMs;GP30?(4)Z)Dgd4tgGNpm3Uw7PJO#k$nFEsLL&tu;}7d)Kr|Y=>1|- zoshv*MQiqZj*xZ9xl{MJ>22~>RAYE2!^VBaO zXrqAP6MOrR-5A`u;pqc0i!?_$=dYNI0hq$Wihpk6M&V*xX@cVy3o)bxf3e6+O#mzv zMB37v7{nN)rppv_Qt?G|YhuJW`$OoU)zy~^3ZwZq8NFCV`*_2gM5wu@8p5-nZu7ovaqhXpaa{{GzMsIJ$h`NTu<_MX0c1`Qz zszT^RdD^&zeuA?hTU+rEe+wI-%Uh!t%|$EtX;3I?A0#RZ#Y3KJAMztWEn<#lc!G*< z1&?MJnGD8sDWj~N82iT!UjRI-TNqd}SQn|0M@%({6ePef*Y6Sx6alA=vB(&d*1s_8 zSJjn19X|0wrtm1{6k>-AC2zl~XVgoCce40(7g-olpS^iwV}=%7e<0BJMW@?{yy=zT zjnG+eQ04_S*w|hCkR)Q&0c)(&ev&XxNS`C9U@YaOc^#fsFauLbXWA@_L>|sYQn98t zPjUj?3%GKH^4pxlMZmg#If8?Xl3oQ<_>E8q);@+|J4s9ctAtI=jwG@-?&k3YixfR; z5ePzFO5m(l<|rE-e*{zZfo4W%(*BRhEt!=CzWK;}MLWopPqGih4#+YK=y0B*6zi(f zHLtUB?CVSYL5e+fSXB1SZN!yz!+nv%1vh>{s9{nmv1KpMIyNQ~+xm_3 z7Oz$2-ubd%rfwDB3cOu=mRL1G^qH@x5>!Q$u^ zyzA5zMUbbUf4P20u*lQfY$;CpY>4oeLFU>I*;4QFq(Y_q*#cwC(K1~Sd5taRq;qFL zdaOe$IhNbQVmIC;P%IMxyRJRLW9YZa&N4oPV^pC_P&?F{1AHnUaL1@!VS#CR2R}b( zAQTsH>1p@wWcFF6%{Cn6jCYPUCo~Cu=2{GZj@loRe{?$FriPX6V=yu(Dvu#+;UYG; zY(kaEe{&QRL9ibMe+ycJ*Pz+0as=)Swr2<0(ET9x+FK6AKkUtSRw_K+{{S$sinNR3 zu8)d{mrOLjlYW_Sv7Fv25vXYPX#W6`+i}9Rho8I?6>|3V_JYt~VThJW>5s$~9da&S zapEDhf2g*)Wg0N>>aY2Wpwg)C#2Tnh8@zXYR57hC+Y^fFIfQRUVDCS`{$W=LxWcb` z-C|R!vbT@k5t43(rU3w|MKi#r-n04|m|c|G*Y=J>cDp@CM3*!g^Zx*2PBIUipD-^Y zn!QYrP+a`xS~$S%+yMk_4!wW5uBM#_?+eZqe`8Qli`}MqmfM|oG`0fZdw^l9Gly1Z z@gKm`5eFM$aQJ%;9P_oCpbd2?-E9~@ ze-^jmD?`w>%+uKWKvlP4oEUBU$7~I&m5q$CHJDeTD(+kLrdDoJ1xn5(J*A4Y+~^-s z9byLUV?#!nX+WolcU3i2#zt8N!eDEDe9L-^bglZ9ra8pyvWn4|6lWWl1sGN(6}I3O zfw(GCw#-UzcerpIF)GcmEVVA1g7RQDe~OM>5nz{c=HD*Zh%)4L6Cq&}tCnfCIIl06 zpxUzfj8Rb1{i3p~m58;Br6(cA(#HqGi-Y{fnKn5oJqiCqxUoy%2PU~4cV1q#bYnS*@~u`6DFF3C?0H29}t{1F^Zae!+WD!wS28gR;5B zL>_CRTrKTOUw;t{B%!eRTXi)wLQqi7*V9}|B$ZA;_j5AB(1CZFu5Jb{2SRvzi4H3uW!D_lwG_7o z%>Mv0N*H0SN=PiyRD4!C9mez~s_*o76qki!uJ7Eq(wVt`D6PJ<58)|rJHhy1-JgAa z&^m7?_GUt*g^f7N8^c+af68^?6a@5^7z2+vC*Ot^RT)?&?KYoyh>kD_`5%wc9Sw3& z*6AV#iWP4aQm&EB(A2B(N#d`}xYX0hH5af7NL*T8?4X?GF;?C&Xy1!$-{U{pDf5mnnf=x`!5M?vC!0-l3u* z)wh&WhvES?7rh1CyTUF(4O{|(EgO6S z%3m>is*^w^Ex$|k7Y&%6VjqLlL5ixByal5Aj%#HBz1Ehve`3bBQ-Sa}ec-#$x>~)~ z0rgDD+yqgst*^rrmJ4BUV{H5C8^lbY!0_wLwHl+dRyVz30x+?`eOj;_VzR$GubBCf@(0HIjEI*uE{zC*)bF=4r@RKTf|$p*P_K->5pjuCV-=v(tHm6$S%m=j{v}% z72FPD+qas|*zQX)S-%WfXa&WMW>gRy0zC6@+dxzaxA%mC64vkjPH@$xo?bT$8gqv0 zyh`Opf=}eWR*at*6_vp|(-9-+%HablSDLf9&@bmQa>g55L+4Alr8CHegTpjQ;?7je+F+!L?XDO$ujAEr5KVa5BD?qZj@ zVpY7s5`+$8u}kg%t{!F)6@15F-mV%BPNLo=ox~N-xL9Vq!y!zdTvbZ3?pjj9Q;WuW zB_N{Qu`X<7oxlSxuf#=#Ua95=D=t-ulUNIKw&;rH1huZ~pWY&ptSmT>7s$tk5DP?1 zf3QO&a`?o!XrRe{yNFhTJ-d`%Y9ssND`0HBs!@c3m#^oT*cG!{9l|048Y!46%s6x3 z6TzV&Ux}ioQK)Rmo4DoVS{Hj^fGWq5^Dbv<8pDiwNDG0H==jcRWU3QUOjmaRQ>?0) zOckJLYb3VWnpY$HMgbrovqO0`F@i2f1>kYoIo{gm9pQNvH_b~?gIu!T#vP5;wE;|5%^5Z zSpzu=NQ3qxYN>g;{?yE?vgzgm7fD`ToBK>1{##FbgN(~Ck0w97#ZOF9tHH!lS!;oV zVeNr`sT>(bU(m)N@P{MI;-P?x!DrH6$r3v1;M=ffd|L z9o-+8(>hZKhlHwr`Is0r^>YSEt_B0*NN zlJ+UDlBJC?lxSj!?hsi8*gOlbYFs%%CR>`bVEDL{7rQ5d!S;o1 zNDX{b{bO*oz~JVof2T_?QC*HbBG=@J0c}JFc*FbL$QM=|Tn{d;2CE2wI`(|^0EOjo z-;~#eD)55A#zlXLkuJh7gKjHxY&XE&i&T%Y1|Tc3T&~edo*7aY5H>tnxp(uC3o5`5 z=iGZ!96j4Dg16E zAi4=m(kMawTaPfEfC+zSji7v=c}lWa`I%j$79TIEk`y3H`P87LR$o4!ToSqzW{1W) z`$HNO91>T5(k)eiZVpCA;nm7-w0zdKPH~=co)68ZpETHn7@uKm&}a zPx^v%&}b^Ne=M1|HayENOC8gxo`Bw6vnA&tir?)rJTaEPz5ZijcGvgu3pmNLzll{v z8gpOYysK4&@q_dI#2k(S)4TnngiH+8L(eCXf2=l9VN);X2hZ9+U@S8u-XP8xqJ@_n zZ|ySFdUFl4ZCEL*+;EZGc8k^}X|P=>XNU6vT4KPSf73sCi-_G2hi=NaiXc={2B~O@ z8LnaJwQOzJEd0hItF#|SABf~W5utrV(OZgk;#>S3$8hy<_4E^{4=yEEATEhnu1Ipk zxxs8l0RV8ii4NtJYdV8|qGJxBE}#G+o;it};s7e`7~@%#;dK-^(aaEa%tw5|YO3v* zVBc_-fBdr-F{b@S=z$)l2%3sq7kH?#9Wi*B%!DOP1aTD>us1GIVwk=n3V}=x>NL4g zbf8X|@bTlqA7%&Dg%mM|LaZ^?P=4G%8 zWwDtNcGH;hO@i^`#B(-zMNnV-zO|D7^C~|~BSJl@A<}gDtSypMQ z>k!W)8)fFl8O*TiDQU5nmqsDR04~F1B~y%D{AN;TEZiJ9u0QNb3v!&YAt|j^cW};? zZaN2WtF3+pY=|p8dBnA;b{61pzM-iqe`!gZ1FO96Fic=BjV~hZAT(5)v&UHCSg1N( z{xJ|X!;>osR4OQ2r#~|F(Oh*-IgbTlH_Ge}B0O^?`pzM6+GO!vkz9^{B0pw+=qULt&ob&dUe@4(^ z%ss$uSu7JKIH*GBZtAfYp59ki>ZVi+b&-5$Ghj)KT zf@k=+4N;Vbhr~?MURlQ^LLzY28IJ7+pa(<`$`)Y5YwjD-E}{#8YaM2;0)VT&d@Mky zr9eHGk-jGAjRrl|*bXpivOes%e{2jDbdO`#;uNqTB%{F1^)Hmcz4>wZAW1sLFm(BM z9b9%u@C*FGJbz_}i!S~~5-VU!7mIN!!md%jgI{Q8mf1%I8DZ`3Wf#1t;{jz@`7z_pni6fba0)j4!7Q)`T3;u(zt^#HANe*m=hsb^S! z7Xrqzx<&9a_qaV}n*p!WRkR3vGeS!45Y-lha=d zg;-c%-ImQbtCpCk6}5)n&Fkh2W}`w!3JpIFrSx9jp!ud7^B1e?5`%?hd6t@nR%OT# z4#k1j3r~!Ah}Rsk^Gjn!f1~LIx%j6^=B$c=JY!udQ*V+w~3>q8zoxxQrP8uq+1Zv2*?%jT{C?jNiroo^tP4oIib%rrls5u48 z#RSO0`5w$bg$e!YYa_Ix$#kAW^-(F=Se;~Zo(f#?9C>PGy7Oc9& zqtb(uUoxOY$mxg($Rf4k-^`|#5{0neGR)UDx0JGoO;eU|C#Hq(KQUC1la+gZ@kK2g z1g}s9EZ74+`{o7$9T?7kUZwGoyFvxz+J*gW!AVMLv&Swf4fB)n_Q#c_ysk51x8@?< zv2NwR;&1Cqe^tzBlv=KDP?1aD*1uxuQxn53g%nA z%dTsPUoLx%Szl;c)%^m@1@R1&IObgHqpT@liu^{l9^-*f?-2(k>MaK$hWMGlqS|qC z?nl|`0mG|e>8J?VH&XOBxy{&@le^4^G2W% zrhf6*&H~*_=Go7fS|k)c7xNflx?GuJ4QzJeFcCoFETAl*c!HWEypYLYe_NO|0BIMP zqAV@fCC#;9>v`6o5w&dS_ZT3lNY&h>VwR}m+^c1kEsbrV6j~qBA<&KP5AOn7^v(22 z!B%q4e{};2QJHI74!q4^EMDp6TYB2Iggg6QCKw_P_n+>F45L~C^48Mjv_MGlK1BOK zLAIAo;MjL>-YZB~vugHxy17k#R;+BQO-el{0{seiSN+UN7E3lS+A51BT5)vzVlB99 zY{6|A5Da>lj$6bjt8MqWipM5{J2-KOyHdsAe>d#n4p2ov=a<$!%#FihVWNjZhAODj zVzWYW8fBEAuoJ_~Wz4-W3mxP0FPfN&Q{{S-?PSe3U`$Z#S0TDI>v5iP!M+b#ElrTi1lu^Vw5NMnoR05#4cyllsZAj-I zfAjR3Sc!CS>XyaF*dQ@RQ_e< zIb-=vm;%vAdhS`g66lQx%DjJws2iHV&&&W|8aqA8ssSja6S=9kIbs#z&@v;{er8G_ z!J6PFFDqs zup3p5S7s$@cbckqT>3KeI}ls!OT9n>iU0|qZF31T6t7HD@5~`xwd}WCmyGcdW<|WQ zMPGj7%61=!21cWW?gR+*0$lHpTb$h~JwLD!ks((#C~luCF!mFAWU6J3d6Q zGL%x@_HXx%Ln`@KcHOh{6QyA__ENaau^Cwq3d*RwJBJChC9fE7+A9XjR>)5AD4b(1`y>7N>h(yg{2b*PD%N z>zZ9(?o1}NMU{cN{II&Me>oKR9}>JU0Mi)Y_=1ao#b1a86^&~jhzd-+AZXTq5g|$j z0nta}8<-hs(`)me-WDu0mEmpN$rB(ppgl6gD=TjKGGQ((5qPO(0(P%hLEE0y5ajl1u|Q=<5zmQT#15P9{6LZ<0Ta= zQbQK;W56?gs=e|IvnmIZwT>YxKdgK!=Q4xn;s6x^>mhIZl|qRuffrIol-H$Kw^ zZGak!ifhhgmHZ)1rX0)(nR?{}P@Hhf7<0_32$GzIz)-M&wV&QFVaCo_MyqdpF;bE$ zF~;SYUr|RD>MMf-dzRsCTrOu4#{lV+$=-Cts<_-l4cd1Ve<^6)XWpgEU8U|+P~Ynw zPEvxRIL7bxgJLeK;MY^*hsXDr){eQ!zYsyJ8GqUf6_ugUP!J3>=NpESlZ?hwZzDP8 z0dn+RN^EtU{{S#;jks2>XOK{D27id@uF+Yl?T;P?IT+?=f_dXm>J>unu>!$6O#c8{ zjsP;sVxMz6e;U(>)x5<^Cw;fnE3R#&>vtJwEtQh*xrGL$-FJ@?wt_4w#9$;6&X5|G#VTH^A>2(g4T*T z)$==8jAaHLW2UKR=+Ex-&&1N zRiWC}!N-`4rGSP&DFXM`ar0`$`|sb>1s*VE^#miZt%k~?o+!`!YQh&HiaIddfd);K2gx5i?Fnf)mA0^^a z1zy{!Z9oi%@5Jdd6hrfIAcEK+ehAWyi>Gqk2U<4!t<0z)vg#kSXfT+kh9PPt!WOf8 z=4-2~#lN%**i*{9L{S23bR}6Ywjwck(dx2%ieF{`Ut$e2lSwF;I55?$$LFsXJN|+Uqqjqi^&U z$M)8ku=a5+6pLjTcUhKDiPnlWO?4>2t*#t#WVPz0#eD5P^0^wc!KY21sc;A_kwqUo zf4JPUNUc`WTq33Tx60Z3eV}ztlLt7tQe~nlKE}Tg0ka{q$ybI@R#3;GL<~FZW!-WZ zg>r;g>?=eq0Wl!u1AeO#?n9}rn^ZLXM-o}E5z$r3}hmK#uQ^O?#Rp zi=oxYr{tH>A{2iV;pc1&H|WM58n@?Oe_@j4tOfRIJ;sO!B2nbM_XRX+4|8K<=8q(A zPS8hytT0Ngi$FNbg|6c0(Oee^K)*TEd7OoftgdwUsPUnOp&pj+)BqX030#8x{KIR? zgHCXm^>Wp<$yFQ8=Fbhw_ywl>-ah=_ zd9Rszm4#=)bo}Nb94n`Tom^bO)lY2V@^x^7kYX0&r~8x){Bso1T;Cj#a0!kS)>anN z?@!?TJi)a)Xg7}p!c;aCY$Rh@f6K=^iNR~NUM-_v?gR;&5{cyah*l$Zho7DX0@GX( zlh?$*Ot;GAmXxq}opHHTsu@bTK7Jwq&@vMr-*GBAU4!{AGUPHGW#|1$)UCbSXK)o> zEXynlS7^#PExhy8u`Y3z{O9+D5L+5x^V|#src1$&zR@C53ADSdd(A*De}LCNyet$g zd}ki>G}75^!+*>G27^Dxi9#_hx!f567J)IZnZtivNk$~rE$1}p}9v@QQ5mj?I<$^Qs%G{ zl^y+WrnLn364jHap;&sBs=+PiDXE?}>MKP=O4vk11&-qsa^uWie2{PQSkVf z*j1~Tz!vc+Ilb4!*~7S6%V3;*)HFa9o_-?O1(f-kOuRACoB?rysy`JJMnTt6Zk)GA z5lZ(_RCAYe0e#n34gp3A%jzY#mKXQj6znKKy`rGOes zG8^>&0H}}$W{7NCapgOR%TO-MP51ml@!YvDIo>1t8mE3Ue{fiqD2e*lvxfv^{L>deXt0kJgojK>BYO~(2@&H za{{BA5>wdEagQF5c~(BsnTSvhPX?bi3ShQf)&BrX;yHAoSHKy5C2F+2BzVPt5J1jz zbY$7L1X|fCC_g9Yks4`A2kREzzKYiH_c;X>2mMS~IWVqm)AOlO`j>HUA8C3qO0riq zLO(Fze+fCc?%=#^gg`w0@XnYwUw|K-d5n(uKurbn;!xIEL7rPOKWTmwT_U|ao})oP zl~K2O1B=1tTWTerVr+7pQ!K$pBm?<9BqI^kg>JKw4e^7iT!^YGwh+FnQ!D6ddRq^M zJ2UtxPXPEL*91!+h>beVAfe5GwYqR~-NuT}e@X$~%=s7yoNN+}Y6OB3f?L)G8GL4na$kGP*V7CLTGzc>dnf92}$GP8i*pc)jat@<`hQGu}79bu?d#W{dH zgI0X86lT{4RvWK#N(_Z%tkTbR${AqVL;IL1Ebz+p+{rL>TAaZe1iC*~CM5wwN?oC= ziq+(5%>Mv;hCoX)ZKJLC0ibW;%mxjiX|t(C05I*@&$*ClEPubu#n@gOwEp)5e}iBv zRZsJoaHXQGTmY1y*{A363WIqyM;BU$ATGFo0*1_$k^y{;Ioa9yl|@!Asju!L0l=4j zKerpmrcAzWQ#1m-nKR-0!$qJiqOfd^k_-o@d-F05cc-6lYSPY~vbR`JbLtqURHeI) z=xHn^xu?`hGTBnzD;WDqB{Wb+f5kxO7xNZnrKC@0`iri}8}V|GW|1zb(-CVaFRhORw}-LGa4q{&m2Ql2J>)BFYOmqh%@|eyMR<-)=2GC94BLC^e>=x90`eYZ zhlygat2nrOiD=Ef zcNbU<`OK+k54wyZb4=^|f2mX#8pn>MTpivFX+>aBt3hg(6~E}ph5!Q*5L4NRl*^*l zRYV!EL)pnN8PekriwxL%H2RCDiVhS!oy8;`V9S_5P#Jg6%y*kk0KE*TRdeOBGTq${ zDW)(wfN)F5Z{`#FEKOs|w=jFd4q(O4a|c;ahdc}Y$qQlvf`I4Ge?NEtq!zj^>+--I zA-NM-md(^Qb*RGJS(u$2EwNfL6$!eHaSCHpUSXDNmEyZR!zXJLS6_1sZpB_WU5hhr zG3NV((kj8j$8a(YC|s+J!)m2Nra9jf69t;sMjByP71R~*c(3>jIY$x1kefAOiB7Wj-RfU%2}kQsP!>QHT^(OSP9Oi*dM?S(>M0Bk#yjX-GP z3IVk?X5}N>BgJ(YD!?pXKCh_S@sXq9;tkhaBTMH~Af?kGM~O;_-wSQ^Gv{z}KGOVP zs=+*+%)55QHSD5oK$Zz--ee%XgeosnO8p-)hIUw$w_#NTf3XmiXFn3N6K4@)bxsg^ zt;eBCv|;xRAyzh3^Zx)Ld0UXXL;``ufcx%Is-2JA<^%z)fPxCP$#T8t{YR~!P|bbc zv!@vkHYxFK-l(xR+$QJ7UYa@8UBCmtMKZKA8mD+r$&HcRW{TBvm7n4nTB5G8 zvDHLJ7}e$%-l%FmOXK1xSfe0m);2$gTmAHHf6#P`$J1j$&|r-L68g6#7J?r|kZr;)Yp9!M^z)08R}5yF@@ zr(;@`V>Xd;HDiy&23o+d_0jbgGuam5p=<0)c!h+acS(w|p#D@5k!CG4Db{n$EDVMp znPDIge++_8sTfaj0jsuG(fl#in7hTgr)Q_QoeL7I9NCBEGr=vO?#5oqiUy(}T=#l0 zVzRhVeLfjTA)|!Y*<)D(poR=BMm7#e>;t_j-V&?SR|sKiOT$Jn+_pnzx!6;F=Gsz& zOZfi)P(iBK?Ipto;%_GU?z()+(rZ3O&rw(be^y1VqJSH;R%`prwgqa>GVKqYJMoWl z#Wli?9OjwDOG~i*eG=3uS{BB$#IZA5^DrDN0jG`++9JU%LaT2Rt!D2Zd@xBcT{KvG zY9<)JyATneaozO*FOtc4U+;4RbPIQT`S&xxIZv0PaSIbi70;<+kQiEk{{UHXb6)E(k_=T$6K~PY@f1>I7W0}??=4bEpyQ+^&uZRlf7|LBnw<@}g z?RPAtOT~A{O%$Wh%uKd2n>T&S30IP#4ZjGru%<2BeR_&$32jsLLpRJVqwNCIc10Qv zV4{h`^DtX(w=7=DiGsL^qKGdMR}8;st75%#2OFj81a6A$l?_cK0l?eQr~whl>eS!`$h z!i^k5aA*pvde0=jz#Qr+-Ic6ym<5-}e5OH864o)>6ddZm)C!T5hvRG|-I3V;0Juu% zm1uT6MJiUbVG|cZwl7lX4GH~Ve|ZZ)7l7b%nD$sceauc>+zX2Q@dhZijcD)t%te8* z_J#idaomB6vB`>nMKOhwjv#U-muFm;Uud4HHb%#Pr0^;jo>s0_YY z7sG;X{O^b+q0x64rM1>x;3SNdZunSd1W|>8;m38v49cNU7td@q@uxkif9&p5`m?Ew z`PnNk)D1*UrcbmIBZ~++#v8p$8HzF*Ri7|?3|Xz&f%0CpjX&?Gq*>oC1P{|9;Cx?m zFAXi&Kk0E%*a{YRhr}QamE18_XJ43#Z34-kPfV{zCNeG4W4KEp79NelgMnacpjln|#=S!D6pavgv*s|kw{#E23dLel2XR+Nw;oY~=Ws>=Xj4 zuG0^}1`J4j9jT(jf01*NkkBn+tyBHwBTIa$S@a^N+L)Bo@a7XYMf-3)j3S zk(16oVl6vjw0pw7(PQLLi#i>1MrAs>T5_C~xTBP8rdRASsS&8T2CEJ$8zl+}GNrB@ zAEZ-qb~xz8*UWhq;sqd~}|M2o5-JLSer{6{Ns2^>ml#?+d!fLKbQ0 zbGS-ySgMK5sdeDyW=gb_v7;&P9^#<^mVwti6xJ6l65gX80?TvlfxvQvM8MwhM1es)4R&yV8?@$ZKt{TY~BGlI(@)bxGcIRAwaR!dech9d-E~{w0f3{#6E=tb#5fpD?X~w$T z=G!xz{+=e$vbsJ9Qo_on*#7`=s=YGZV)%(@RbKe>kBEFSZ`I}ag#s((etkhKN~|^a z*Mp2ig=z8Vg5+KQS4Mg#!9MSVgYzO5P7{!RI_LJShAhXa|_!FtjabKe`;ixPnc&NN~OmITupGw3jJ;jL8o2ce5ps0_DAg4aR-qo*B!n0AAT(2a_N-v(H8$SO4n2XRC ze;%p>o1<^JWE5a=_?B#7tk>dXTG+zz2PH!3{lp_eTVJ=RV+#h0!e*szynd38HUaDn z6Y_7_G((FY%ww3A4h!=EBDJ&BHAQS1yS52kQazsF3YPk;7X?7shSm3s$R2RZ<&2jW z6@_u@USi*{tAA`u3xLoLzuda}DCCRwf9p_g-@LZ4xywNr3TH^Ugm7%W;amoY>aL&G z1Cq5y@4s@zwn2uskJ44uZ1BtQO0}ZCs8_c>voN9vCyrnyWgK3|oxtsk?M0{Q2z4AX z$&-k2Ib;Z_Nz0;$0;8ZT%M0J_EWojvuItC*V0@u2ri0HH3YE%$m>R`?UB_N+e*RQ~`IA9Pi-#wCvrsRC-j0+v(YlIa?Wed?Jmz5=!ERO<;3`daBY)g>lJZC zU`-T2Ei7aZsYWOP!~De3<>JR*+(OfHhcS}f%kElG-*rdt8Yx`qUzo4Ee`Kfc^8gu6 zb6eNm9;B_CqW=Kop>3mO+{mEd89v-pMSF%1%2Rwhb4&saE{4$hxl)6YXnl1BP?^H@ zUQ9-TwbBYR%{*}l7Z_>P8`y2;`!>@M%RWz|-Tp5CA!rIqx@Fa^hreBuW-q z@NfObw6R=b_?8Ir$UgofOpb%E#dZ9}3@FanJjV^y0EVq$MGrzy<5LT-%8+kq$ zVxeMCxx;eV8*;hN{FX(_ia%&ryHS>5g$B@GGmas^U4;|m`$4UA76S&g4gfgAm;J>p zX3Sp~nSm8;e~-s3X69t4+0JEB(u^uqDVH6wLXz68tW|Ilj76}gnBQ|>;a?JxpGtQS z43z-mPvTJGisEx}v0ACmHN@Z3Jj&zs`X4aH*atj)6xOB` zgOf2^P}XKls|<4ugDVx7YQMEHS+e}WE{WN4x+S<4f2vanTd6?By74S8>XyJVMR1khtfR_`QNxrK<0&J?`DjfAvByjg}J5jpvYnA^v=20>#h3Qy!qU7OP}Qj<ID=yXzSEmjg%E$e`uj%Jg$S1 z1p=}uf40|U#i^*O=Wie0ViIx$#GuknPJgvB^%b(+K^BFESK^_T7dBG?8fPXvFFA-9 zMQyr#OF$}eWESouu_J3)ZfKuo;gEvS%XMuNaINf0(i_Py>vJ(+|WNV!)`^gM34@7aRz! z9yqA$$*z97(1XDDa&WyU2-y(bmKR2m^?B2{{g1UR8Zn|^;X=GiMX;PM|gRSgIb zt>9L>#bbb#y<9=W+r4H3s^l*W4EFvZ*AmL~82+EDoy#!1u>etGtyzqm)@9-=mx_TzcZz^;;HIDLaVR3wNak7;7Wh2(0&%e5(kDv2 zWK3i5KugDnEX*<#VabJ9qcGN)YXxE;e-II;2gcw;5{!@O23k<07??0~M!q_k7Lxo* z1OR2{`@}g=z!+YKuMs*R)wfR{tiyG;jvk<{@&QR#bP#MI*wwn{+!XlJMePtRfDkBu ztS}L@7=G_E#jx7z^0s_JoRtO9TeUWWG=pcvWPCe;o23 z)-`unU9K}N(Lml;^b%dujgKQKEwx+YI1C30RgDt`FB?iVj03MJTN zXT-fD&EX6XU=rW%+)GznQrPV{`IbsD-1OxB?g$v8 zDr0Kipc4}dOQ$?Cn-Wcf-D{`sF2Vv(L+`j>6;|4-0=4kU7!(CBFL&qW73ar&I{qP| zPJvbb02!Rx>aGThtAk7laI<57%n=2$li_^EfmygltwG7K8RqHF;^SVTf72FgCTp0P zULYZ@pu>N(M0TlCzqU0l@o|KD+Q6H|Dl1K0KFWj+Qt@Ho9R2Pt^5072)t{pdY+G;- zByOONmY{}cTvv;T3}#lf+SI$eRt-4l<+)O>jTV=|3OKM<@5xrfz}Eu9&fmmPW?EwW z{{S$C#R75D=hU?b)a3&se<@Y$<34lyN;eG@(X|{KO?3`@5ix^Yf)tMc zX-o6p^8`@JZydqw5eovX-^V>l_46EKn{nSf!BA^lUq9WkdwXh|mv?b{WjGk8YegK%H8AkfQxNowSh$%wgfo> z&oOO-uZV~xTJMm5*^K z4$DLjpYG!qw_aTyJB=&>%r9Gug4MEqS$#!ijWn6*^&BM!A^5M%)S+SuaQ6_Vn#Pg% zsd!}pptSwSf8!>+w4(n2=a_jvG&j8JS8-x%tI}~0AG0-rx7JBQ7V+W4a=C1wc*$to zB74!Lj|KDgjfZZWhc(2kKs?^@U(XPvHHzp`R$Ew# zln&cq?!P&P0On#ZAb8VULZ%%y67kk?QQMqFjBCeJe={x!uqve-GG#(NwQ+&5xn#g~ z`a{D?!qPhvQmv*2!1ePgav6HB6C&)o1sXZ|h*@;D^91PPfvokOVo((b7j=$5Nn5m{ z#r#I~8YxZZu$VepXhl8`#7dWT-Wg+nY+hV<6GG0{m&6i|;lM0dha$ZChk7E-ksrJ= z#Td>~f687w9lmAi4_8qM=T&S4)e%>DznM%Dfqb3fCc#}DN{FkgIg}BuG^s>+bI98% zt6_W3ABkH;7|MRAC%%@BJWJb9+M)4n%3K9q!7Y~^vRmU(wTLaV#V@`*#Uhy^os4JI zRI)M67kEm^3tVn2E_K7sYF3CLQjZN`f2ei%TX1tlUpF-^zz6Cn{PieaxkEU5BAuIrLK#jlNOPFBz6XA2rxQM$G zpAD^j;^P()8JjV~@{Twx|f4O4^O)eI?)q9m8TcjMaAKcm9=|{&|bqb+9;$cM~6vM1xU07SCjar z3WApaT`r#d&;Qv_O9KQ7000080H+4GoFWmprvj%2w^qs#^eh6W2A53t5&r_G2DeT4 z5xWlprv|qQ2oj=n0;dMIu6z={aRR3Xhi>i?w{Gqe11SQh2Dft;6j=cRrv|sq7!)t1 z0;dMI|GgA}0|KW8mx93*%L1ncw@<K=iRD1kCj-RmqN}$N?BS&88c&_7I8~sFeJv(i25COd4Jx&@Av!1_j@LzX5qXZujlizyv~`^ zueZPc0-(0%Y|a4?2n4VOZ@{k)z!`vlmuGj|z2^ltzCC=qo4}qu{CfligoFeI1OpdWU%nJc{ zpuAAd3885H5%G*$%WpUw;d^Z4U(C@v*?x{Osu4a_ z3JR(by6p<8x?a%AbwZ}mR^S*r+rLihLT#eo<26{;0|#f+F?L=S*Dx#_d`}#U^%!?Z z@;4n_oZ5hwy9fOo=ffzmhCyt9`ao=85O3PABkEt5yp)>#)a~bs;f5WE?}rcgxU&bk zj&1(}PE;L;7bVS28O5X5j8@m;BbKM&QF_C@ECl6_X4!TedSyyt%4-7CVOKU`^}M0o zJ}S;IdV~3qf%9AWlfg&U^jW`SS`^N{bCQ`Egh!T^jVX+MXfY*hKQ#(}Uzo?Y-@9-K zMu6coi&mz5wu11idu3zR>v$v1+!7_Jb7LyBUlnFBhMp&$WKl3Pm_XN~uQpgMq4Cko z_!Q&0zA7pD9Up_J*-sycgm2oDnX^~hYIN&gy(E0=>p){pG7Z z;EQYRyK@5PY&;2MOeC7Hp1PsL7$;7CTbtIKc;A3n!6DJiY`Gh&w2?U!iqeK`;37#dH}myGa#sd*KlqwDke`n7J( zyUsY@jxBsgTq0(3*~GgfGgzC|9U4D7Gm67G9=OQibfFO?EM?R_L2vqb`{;GnTr_iT zqaW#*c=}q!AsEr*GCg6to!;LpF%dg~0H;Iq$^+EVb=JFSTuhP)zIC*rQQJ;p!e{f& z$xoDK*~Amx8N1G0jbW~CzC6mZN1Y^3cqXeN z;dH5f!b4gIEnfa*Y!u&pn_NrZu;8tNv&yzsY0kY5EXoCc@|^=8ww6OGp*gPN$tOkB z1(gG;bAyqWFq&=%64ci6bpd}qO4=L$gkCc$^C$O*iQx|u-Gwlj+jWkGNPI*D+m>OE)5|3>5DW9!=UcR#+Rf~0jkb_YXm^xkr`I&GzqV{M+a!=) z>($|aEL1NHwJRb$aLnrb5yx3G3SVBzqRu2b@E}SkM-KQJawA_BuCO{=Ni{SdPC$Vl zcWsmT;R7x#G%-=T%NJTpe$`+2jm3~L>OV@6qQj|wLAZ`~M_-eUsF?n9E6p`c>C}uc zO>3=UznpZ@suNflHnkyDGlf-@7J4(dz5{qUCXY;%&y(^ zYf+cOg>bNHB^YMXoYi?cz19G%ZPyveb8gP+nzXFRAMp`uMk~wnSr1roG~#T zVto}SDRwaMO%i1Mx$4M!wR-cpEEB6{Wt2uuz#wzL&&MxeGCiGED|NQxO>lJ@Kfi&4 z7uK9tIyFN@I?p^u=zg(>Ub_tnZhaVRf7OVhon^3b`E8F0Gd`R@+XoM#W5VYNFo`j%(WyvwW*ld<&O~4OZV2W& z&eZqRr_lo@pjrvD)$jw$l$+-d5FSt0!kSv`TpA*BY1j0~!6E2C)shTUDWQWy;+$2Q zVfDy&>$hu3!&?)(v~>ZV~HN zyAoOBqfPd0v#inVY>;oK#jjPI}1<;=X0$pK&k(l{L)%n{VpO&eX=k z^e1juYKQl6JHko{+>S_p7ON9YB9j7@Tl3Td5gSR_dBnobo)cAdh_7tQ$P#^MiT>1U zevDyTAabuThE7S?-lX@}9$U|fDvT<7Oeq#^!s`ThW`&1Cu7T{xtHp7PnuJ~@+rRU9#anTY7E<dILIGV<-IfC%kt1X4QQ62AGgPff zB64^tj#Rc>Dm61RdME2UcWt(hj8mlfG#R3C3VKwu+@-tbF3qju4bz>VBrHUN^F*)e zPJDv*F5MqsxYF%-k;&=?HKDaLoWvZ^(e@dvd81o+_`1e_2(7tz4US%Wvby#paEP7t z5n1JC`&$hK{_^N7vpdwpume<)V<;hC?kZ zM>9~GzB)6VtsO_KAMKMN*V+56c;EHui1O;{>R4ZAc9T)guQV(RYg`AL^r*$|jbbAO z!S!Y1r8*7nou*;u`(jPHFK7~-y8X|8U6~&h!3So4a%K`9GsL=Y5H8sN7S-n)-dvNR zvDf@nV7aH9vz+_e98nv-yKfY&BriMCvmYs0t!i;?n6w@Sk{Rer>qcd8_Hjr1Ls@4_hDGp~ z@e$#F41Lqi&UPw2mWAk3&%e@9WS6r~7Ki>5bh0Kpm^c&6maq25&Na4?hhY7yemFQW zrY6P&6WzYGLM6J!dzw$4wns=A-$WDmS+S5yv(8r^$>uNIBSuUADpskwEHeu1Luhh@q1ywtj_Oo;6 zz~lLeljhjsfMd-bY6ZchakT==0^1r_njH+h=XU#F=u7wogzbT?OB?JQ?CFmm@Yr{M zI;f0o!0P*s?m6Q2l1(q|F}bc0SkCj}mKVSLS=%>OHi~0BHhgIV-JUC@!J>n5^(9A7 zc-BR8=265Z29Z2!+G4*|O20u{v%3v@L#aD)a%FY;G%PEstV1*6%0zgzPakH}K}Fa+tugq8)&xgP9D78k)E?Uk%nT|mjLNvuVaHd{xzrgI#rnt~#`q<6 zg^!|}YZ??ENlX}nCKb(@zhg2(#~=|%gkABeO?*riVe+X_#NraY3G>0VuknO`6y+$T z@EdbfGoAvcA681$1SMjNGtZ_}HNz%{%2PE0F%k1P6Hr7rlXlQBSSR}fp-a1&6PF>c zThHp`MrOr>ErwavK*5_Qcj!0sMwa_;1XT&T4z?cfE)3EQc7v(Cv8}Kz2&P@rxCaa7 z`kDFneK+as+*~)=p85q0txQyZ76>5<)Wqxq@!apzzju7zWSX23)=)_`m(y0x;Eh7VGK+{1~<4DV$8*BYH{StRN;-oQaA(2PLujShnM%_8diI_G! z`6+V-&n(U8pax04Qwl+m)}wao9-I!m_HgH7Ax}vLXrvCrvzVixVLD2eqUful5i+yy zS)agdm&7eg+F1Z${cgVN;7l3Ep}(=c>EtzI{Kt-Kf#*bP(t~$9g6c{dYf@56 zRdEa{u(d4IZBcl+`282KxBVDuVaL=dY!0LLO5?73gL8$v4<|N%yazXLoVD$J>#~)Y z^IfbgUg?B~WyL`Y=NLyrQuRc5v1o6{m}D;UI;r}uWW^)8XI=1aVK;Qf;lt;b zWwO91_BFp1kLFBknXIldKzsCd!f*mr7JTJOa0ex)m@n5zuQ?M*P5@hXEiMo&^P#D@ zb;3QpTCyevEL$pnCE@$Dne-?8OldyohVwgM1a#3KarCFlt6;wS4YRe}Fg+^$zTb29 zNulT<59s==32jBX~C7*Pnlqy>YrSl0n=?(C@Q~0vY3)n28zd6<89g#ycE6* zv->XTa1hfE{T`)==p5zP35jVlkk+U5O+ICU)jbh^Z1@=ev&GD*3U}wz`X~B@+8_N$ z`DY0mfcmnZ3FhZzHKKX3P8g0iA6wMDGq!SH6eF^c+ zx=Kw)Q~N#U!pX%m=cOUASUYN>*YJx>cjk_Jr1%ttvnSYtL3M=H;Ps|USDP@acSG* z8PRH&ZG@}^U5ZGh((sWOu?Hgj9w%>m?6h5gT2AdTACq)o$g)^CZdO|?xgrx<|vVW zz+LH%WGP6Cb@W{!Rgry>b+tzDnWrt9Upu!p37JUS2Fu_o4b0kZo?8Z~XSb%|gKvUG zKqu-G70rCdAo|-!E+6%%@=(JWvo+)Xo)1t8Kz~aOMzpo#pP=WK=yi1_TQeae%$EfY z=U|fHY!E<+wi@ewznKXSbSz@Tjz*Aw$~{VnpwfWaOq3}OM0}ndTQ-r&l9_I&PIulQ z{Q=Hb z&}cE$=iK9%aR1QYxeG0~6w1+sL2MLrLtI6?8*NMtDHi8PqnQiKrnTIykLWpnw#f(l zY1m6b2Y2nuOtU>`{#U3R(l&0K@>iGfcT!15OxEPIoz!~A^u?p=+VLyRWgpRvcf8+? zk~YFjcC_dI*5}*g52K(Mh}(KmS*+%yc-Ah`FOO36LHny3p`(ja&^cLj7G)F?xh&mf zxVZ+JAn7M`KTdaTsw~wV zPJ!{R@wvPGgwI!lsblSTOp5|zXAmsJIn3BS*Y?b3Nd1Ql8;{nA;K)O!E<(D*f0kIw?t1Eh1%;G$WhrWfh(j0K+l&iPS)sYq5W(`(*p z#tsg;*hFnmcZ}wiDepG9MlrPYLO}I$fOlaN(NwB~Y;g=A`s_hQ!fdxKHzANHnkl62wlgfNFQtJM`)Rj4+5XonjGj@(+6Yr(%Ae&bfairs07F-cR+=`oH>(;ltdz$ z&$)gnZbpfm-WNxEPrqOv9SK?=khH?=BSTQZmo*2-Xo^hYsojZx1EXI!35*zn11Mbs zcSJLJ7_4`{#E+Pb$bQe2?m}15!Pd-~((IF;D76w(#_NQrd?XCo*p81w&$F|dJD)rW ztg4NkxZYr4XE0`mGX;a3*Hr90;d+p0iRVh4eHerA(Qv6D+H0-=>6VGiMA9)cm>HK+ zxrW5>I=?VX5MafBa=}OWY{oE0JM}IJ)g&vC7(&-@aiIip(9QS2GN zJ}ojmsoiKkczwqE+?zk^{B1sTC*ARhiRw=T*?bMr;I1*t#9yX+1;&D;bdp&L`dOr= z>x(ZP)sm#FW@>v@bJ>p{;p<&Kaiq>Eyu^pnKN{s?^EDJnS3fG!15;$6H#TB z>E5)Dy5kIg91`?FnDsUKS=yhjZNYW=#y;VrGI1d1Ym-_#+tTaZDU*y^{apdxirZaW zYL0BY-GEf-g1{wsDy8yGqJbMBUlVNz@jK-{iaXX@G^ysGPcvU|0vyDC_J={)rccc^n*C;Xc6vRP6oo!yPQ z(=*Og5o-k8W&ehnm*`Zm7I9Av3$(fld1&OPs4M1L$%kCe6%@f~oXdgQs4E^iVf~&Y;V;#L+o%Np`b8zCT`PKi*od`DZHmR7rGVM~F2&0&#Ud(V*>yB0mnK6=?Cp6*C~P-u81V^`6nULFO% z3Rh`lP@QpNa~qiN+$bhzqu44MMOtQmNGEE8l#e%zj_f}NhO$;6uM!IW<*p10haHHg z9MNEd)NfE?caip?-^tH6F`U7`InHj;ey__dRIZYu>~b@6)EK4l7D20hL79r42jkOp zv;G8Z?5Tlc&Lc z$z*)#I#$^y=B%h9J^*d-N{5ncPE!?gT|}IdYSxlMB|#pg^e4P!>^hA~d26`n}mvYB+DaFm3qk;H0$^+&H|g>RA)-)n4*SW^U`a7%U~P(taSeE z!i_TC6M-gNh&;;| zZ@96}?Edx)aDCDH=zy!(*ldL@x#mzwO@XevXnE=(*q85#H&1-p_(V_2>e%rg{Gycg z>$c3y%k+e|)A~ktPR`)19(E9kF*DzhJ-1H-x?3*~#(!M>ZX#pAC5FB9FKeHz;r4aM za`^s(nHTyDViiIwo3`~w9hqXa#7k|iBz8_aKGlrdBy<-o?yk#!S0N_;fY@b)9XO5j zxCgd$CNq<%iRhprC1H{lhYyd_KG4rQCMIgXW8gqX_w@$4#{1Tx(z0DQzI)(smo5mQ zmv z9G~#+ACLa_eQLUNE}`dXZ+r0SC-k(I==YKB6^=u~B!duKV?cVcORq2mp zhY`Ae*PqjFsd%*+v>qBCWdsjwiJhN^bxcrCK2|CyYooRHtuVo|4kwX!7pn&3A`0bf zA88>z#QyDn4z|GI*TVHrw=I;5wU!b<0RLWUK~EV@V8)P$-bNX6EvMZvQ968>LD-_b zFYy_96rma%qFv7-aXME>oCd0E#j-wWeiR;dq;tN(##%j9tt2DVaB`)SQ%@}mJzKv{ z=-y7$Ixq7efCK==myxHLJRriB1)y^SH7)pBaE_dRrWfPZr_BV$9R?wc+->Hvwk<8) zQ7;ap@|ve87$zhoCONemM@eU4D|=Jr?)J)`t+z8f{4@C&Hq zPM_(2r*fIxS71S3=Z=HtY#9QF_`*_y67rhf*7QDB? zYrI0skcRFTC!Sz);**>%l5D#$3>9zqc0K zbDp-Ny>>YMa7<_<$gQP_8dq&QoxUi4BFGQB3=xE9-Xlbnuu3Ict>bXv?e>xDpoS%y zXpeT@@J5`qtSL1d+g%xqm;!BW2P?c(=k?vOt{K1L4|OI_kf=Vv+j^V(a7fVKv5#CfH_@ zgU>rX`a|3&39OSlq(H*X(NEOizAMsuWsgcLrgTUgeaB);cW#9r6Mr3tVxEXfJnV0# zHT#sP+sRFMnlQ5c`8)EI>Sdt!Z)kUmH479n)Ld{(5I2AZ?JO0TpKs{+y#2khnUL=)W}`x~8eILBiR?&MNXcU`Ev zJP)hogbLEE@@zyc6eUxMH9H5(9D?x3d$&Qh|AY_9JQpJC`bMwPiQaY0Z2#uUK(8FJ zdFQy+`{m>Q6gT7p>U2HQk0G5fExn^L&-JJ7#ISpuR;J5;7;{N2M`@iz;?}|PwS=k` z8Nx+cn|skM*qUv|jC_ENyzXgT)4jv}uh{)h`xghERywIB=(0F1pnI6@j_CXh0DH6r z{$^TUfVbKIg6`axt>Tu3yoJ%ZC=<8%$hP@`S0EEkU^>uX81n*SQdukBa?l##O)D)8 z0~xd3K8!Sf-%wN7+$Tz^4bct=HC)iG@2kCLDecMe?kmNSrpVs;a2;_w!--fjzTbrA zg0KI&&VBlHWjZzz5K;<2c)uB_aRoVG_b^Mt-$e_yeHD!pXL`PW@e^|-aQ?|}TL*9E zesyhdms7PAvs6sw)ON=-pPJMN*dKKFmV7mjxWg@fdF5PN8%5}0)F^$r;Ug(#4PQd{ ztbJoy0y=9rg|Na3r;%w@`kb5R4?Z)Q>{z^{yV&*9zmlCj{GH8dIcN08^5o>C*&m1v~CA&I-JfdZrITUyoWpdxn<6dZLllJ-&i&y{9!ZOyna zzgh|69L#Vm5Pb-5-{{)k;Ef|qki82o+dEf(qANY{qEVZy@$R@VS(Ow%4cnTC$GdA~ zu;78>zbhD2C1-N5zZPYld;CO8c46+$1xK099!lK68?_TKHStreqL$z6I6L9=&iofI zo~hUfIlEU@R$JxX&9&jnb4})YT~$m z*-iT-ZpX{e%_f!!o-2syj-^O^TYN0z76UH)!OmpR&koK>Oz;mZd^*~58wQ47)Lc93 zTf$^wc9QAUwVHeI3qy`+^AD&(jj#s*pVgIsh<;V-u{$C;EYHGE@vXy`L-0YjcW2E?n7v>fP!~de9O#_2=SmJPpXhx}+7-Ngpi8(Kebw5Ni9yesa5wSp}RTZ+WCpdPhaB`)=3REqBTWU^@rtut^K6F zJ((dQB41s;B$mT3TYdL_I!OCg_ibQ%f1fSCb5aF&A-L^E$1u{#ejO!UN)KiQbGHw3 zw#O$vT{>lkUV1q^5qmIy^wm;!*VtkSYa+_HOQ%hx1tlCgJJyz|UcI@J;7dP$Wc<}e z2YZZ_c+9Umj{PF&FWk{U;q^DQThm<_FGJrnT+81DPf|9VDIlpuK z;l+_~8AZnJ9(a#lkC6<2=U=-l01=awz+U3jG})7sgI^^)z>fMcL48a*Z3noeui zmt=VL&72OdMWm|9aH9P4H@W!bloFq(O}(_&dG9bV+dLM%i({ZFCW0BGhhO zQMB79n`S588;ftHceV~+N|ilpt?HE`=USZOs(1^uND;sBcnBPJu~k(?+nuc~M3J^{ zHr@Fw^VQ(3@cB*Cj-)$(muz|oj)Xm|Y-DD`=XuT#s^=b+!7gJBIH49U7@`XQ^^ ztQ!%vc?|YBG$vr{dw07@Tx@rp(JZHXHj3rNzU^e`ZPY|s)Kh6Bdq3o{pHV0=JP=rD zJW6;>F?w~-XqGkFx7`1%gge8!FpFayp(+A^cqOP;08g6m{^|{Xi7hU1B522mn1r`$ zt9-!YDn`aTUPrp%&uOsS)ZE1{z#8JH%kVILw5JEJfP;z`88oDlWIWj5qZ9F6exbDO zKRYx6_~kthUn&@|EODjnV&_c$54(~Y8tVD#R+8JDgpP$O_SVXViC;{BD>OyPDo<1# z))(8g3*FmA3-kMb)nX(|5j|abMGrpt`gAz=TuNJg&LJVCE0zUQ*uq!XqlS+R*}M)Wlg2xh zeTgz!#UmCE5)Z0rkq5ROcN0y*Xj?@LQ}?(#FJ<2U5dMyTT0@2p=`2vyo(W`RWO*?S zvs7kr*={8|jk0TwHc3e+R&e)C1h;@oNif8Cq>239(ZZ06W+d*Tor7Q2*OuXHv?sKu zv?tVe9O^(R{H+PTZDgG@A8qTu(0v8&5=(N zcZgtQe>nD0XYuNbTe4~vm7;Qj;<@r?T`g4kh)&%inf7C|z2{yERk8qz5G8PMNUGP7QlXYy3?hXZ#9e+kfk)iXXcWRwz7msv+&h=mhO>%@Nx zNzk`hL!c3!EAO%@ye7_#FEVGp8muu!vX4j58=2+HuXYbM5T0NrTN4Gtu?iuZSzcpb zoAlI36ZL!+`IjR4wFe^ll=o5ko29?MK46SWAWh>@tl949?vT#hU56SX%bPt<%v;*g zG7%Mj2jyaZRB9K^b~s8u$l1^}M~5^HT6n7C_1T6BC@3h@5F?qYG5(Try=Fq$=9J1+ z-~s38}LQDE62$O~oXd8PfmsnpjP|<0n&Bm!|5jCT?AM zRWX;}=h2sqelvR`p-VguA$zLREL#=R?u%Q0DAryfMt%Jjd99|PRFp|a1hX<{?v+i% zHoDulDR7#%ZxVmrIR=%;{z{Gb!R7^3BD-fbF=FQzkd)wd+Yiyw&Cq)M=vLA3{?$b9 zUx3{aaFmc@7UI)FtQ6reLHU!+Y1WIil7++zMw}02QiSphRl?6O85aCT-Q+jMo6SLg zyvstsj+1nlR+!OO^zglI7**K=-*b+RTQl~Z*8e!{i?oP3TQUx0%qWyGv)l>|vfvZ4 z9nBf+IyfgA-%`>(d!73PEY=UF#3kXf{5xm*N4M@}V@~W6V{+f4&M9*3N-d|B9EWQ- za~_4|FR4L{fq`1E5o^TV%G8lgfW^5Qm%7fut9p$R{ppMAim0>aISB2 zIb>~>F6&Wt7LD$Avfn_N;C0_Myz5*?nVd#7R2sUsmJ(ovp#}^l!;I!PcsUS%O5a8J z1FyvDg)SqMZW$*#5*QrXUUjN6?3l(=Mw$h-Li6U@|Bg8#gS%Y1Ten9EQANjj-^bJ? zJdu&9D=&KzXg%_WX%GGz+_pC&Xi)_mHN}Rf0Rygs(u>e?eUZ8E& z8QXHj0pt2UWuL>dtvJMo`Q=e0C@R9S1WlTVoVXrCRhTJI#;x~s?u%0vo>oL$*&?b_As zr%{w;jlUzIFqQ8VATM|NkN*NU&w-=HCyk|@c-?N(Pj`MqGM~T)^vJnna&F_3!Rs|! zW&Ve1gCDg79$~P~ykoV0T*NQ2;xTNEsiM#RXH8ynr=2vH&HP3m50U9D>6B^XEpFA? z$4j_p^Cn+SbaATTIHdtUH1p9tGoHxpxh)OWk3ge^v2yI;%fW+V0idXiQ4Ggk;|uexlD5R>E;ChHOih#xjjzU?6= za0_zU0#>XIV_~jmMBL?ZIonrwt)aGdi?)S7N`J9Av%Nk~^OU=_!)W&VU?ToDrXECT z&z0l)%CA10Jy$S)6m>KM_+Q&|V?2o7KDXCo`si$oA?YrwMFF!x#;6ZYPRb)jlKL~)<3@n5A;PkupI2#Zf8I|uaj7RZux;|jTyI+0=}B8{-6+# zg8IcKA$~=wYSqb@tmenl2_FHd;FaRb)=EmCMuYyaY+P+ut*NdJNWH=!*KaHAmF;+L z=Q<&*HZjJ}7jLM-CzK)wq$`)dMAMfk2a5No1N(%m(xugTtmOHye+=g7T&kj3l~>E< zHcH&CzUBFU$M^F`O>sfQBBr=*yhr+E}D zp~8If0|syGt9S>DN9m?doz6J}0lJ2R*vbKou?6`4|6OOjoa^6U#{22=on21)ZmdYI zV+W0@e&);>+hIMu2kK{R$CfDLeO*~G3|3-)QrtRs`uvfWBQvzS3&~x)+>Nkr#%ptV zKb%y1VDfDdsp^XaBMMB_l*P0A=h&EpV-{O@-*S zd2ktZcm9%@^76XN`y+z$Y09)kzqU(ZSWOKJi0rw2#Tx1&zwb(}jp80K6Nv2DBd^k- z_FgZqaVpRGf0tCl%r(w?&|m-F@K-a%Y7tman|pJ@rZsBFvbO<+YYv_#V;o-f3{LYzQIN@*+y~m3HQl5 z0gp_CwcSnCph%7dvq}voFdegRxGjD+Y28y^Z*MF7=<(^gSfG_gh+Fm9;Y(Z^0)Q(a z!B;WEtJj8NT81ZrS;mAUR@Gg9QEP8e3&pfu)D)jR%e|*kb*6mb^#3X@U1RpH1fZXd zeLMXv%GiXi<)*GNK^hu)A5X;8hS%^r=8FNV$XuYVM z03IspkegdiQ_MZ6OONXK7^e@SROQx!nH!s%h=b{meL(!tRGW9aDBu^M6?M5Dpns)M z7GMPCLoomJ=_op8^79qbP6&tfI8u zXM>gZR5lI>!XHeQ{~xFf^ZG|w>tG}Dx;>x#_Q=?QUj1qw?x+qojj012p^4Scu9eLn z6fF!`HH(qM$+`9N9(IyrvwhcDZW;qM&U{kv2j>GPe5oNy#r7Y6qXZQb!Cg#N ziC@6wq`f`)x@Cb?a|Ba@<9Es(cTR|>XKu1>Z|H=aJ-XyJ=fC)g-1kDjg`Z?35%aai+r1vdqk^Hjq6 z{U;^GGM*e}&`Z2`qSTg0#VXFUvn$8k#`C$nVlE#qSX!OmCD!)4)ekixg8OZTy#9ep zR2$TS-~P40M7de^_B^5Tru#PCe{M7=+qLh8eVK zP&IOs)oY;>LDh>$a_#Aku3%D=bk;oy1wgdk^ZtPpr5sJnw6Z>>^wEt=$U-+C*VP%H zcb(^Ar=3nRGttzbd$szAR=n{C?^>Kk!~<_yJk2!AaGmnd5-VhB?(UvuBmYRTH_z2V zG1sX~b-$Z`hAk5aJV$EM>^?Zo+CKiF|0uNgW;`3msIU?{Q>%@I6jvyNWuZ8yeOlR6 z(sZHZOURWF74DU-lEXr#q12fHd5tZFCu5l0;FywpkG3HBiYvK}Gk<+P^un*fm=fuj zX=an=V{Z;t)X+TK0R-l=pz=q>=-#V0Jb}HOi7?K8p17*5(&uwKE)D6RPMZs?HIi($;aW#mK%?u`{g&Xm6~S z8nxeu4rd@nV#QZz!cqKcu)@pL<@$wOVYI(~ch7odu) zzv+Tm|DoBdRJIUQRtYK)xunJ%64*wH@-7JSdFqRG0ctGM3UwQ(Zf+oV&$yI|4pw?C zKGmd*J%x2JY#SSG?Z!sICL0dqHLS<^B7HACOfFj7dl_(U5VQ~s_QDyn!NASMEZ-r2 zIvu^^w_mGSIyF@QaIF?dho-v9TUjU;=MJFeIIrDB({<7cc5`{;nWZNR~*J96!;2fnl7UvsSpZr>@{w|Jg{J2kr9u?L6icSg9f@ z$@6&R9~DJXkk#<@e92oCWtj9=VU5v$hj&{>-dZtNP&Nm61_WrIQUoie>Kgpy7%;dX{ptL~ZU$p# zv$T*J8khENMlq++b9m)CYj7xU+CjP%i&b5IFDX^#vbWSH!lGkYy6{{7oui0~_mR!% zk2-U&g@|Rn*T{h=r{3R#P4Yc|G50=-Qv5%JEAYFlY_2u*HfX_v_aHIcZvVdTix-x= z9ecVR{Awnr3W5|`NB_uakauqsYxK~VrG*r_zp+&lQ1w9Vvl1;m>FziwqbzJjA1|>B96*FsYZK%v{Q0LJh{<1Px^SZ1Q+BX=kD!);c?2g7T_zk zV+AG&&zE?}y-iNxlXI;R`Dc-Rxp!mZggm!lW?$^A`zgLxB8#;XC41vC;7Zl2XM|w^m#eA5`QtV2|C= z3)UTXyqDy5#KBQ)!RW|;uw#>@V#%%e`p+Voe&1L=5;m7)G6Ih_v9%q0VB689)>jZ%E?enrYgwR{T2kR)PcEsvrbhK@ z9C;;FT^w{JgKdzGgi`|)^bJXzh?0!SO4#Ab33Kud7Inga)*1PKc#66>^2+f!jl=_66z`{;qRs6olFVS=V0l`NsTqb6ZB-Tmq^bY-#V-?Ro zJOAyck-|opzSDeJq;rAQY`qvz7o^bkM>H6W`W=K6LvGoK)*$T38Wcm&dn^P5*PehE z6=abAl)qpY6d*sz3Dk$t^$jx5Ho#Mi)MLNJaX3{UXFddf#-AP=d1dL#V#00;v> zl&9Fc$QLj0a+T$l&=mP=qKd`AHS#v~ig{X^MbAR|w3}?(3KyI7U=vBa!~I;&J38Mb zg&kgoRvl?vu!?BWE7N$e$tam85SBN%B~(l2x@U~h;Fbhjoinf(&028&ZSi9 zZHDP-!8b zfkz(#)$0@^05WQY)o?IA@YhP00{HO27+p`Yy^8U!>a1#Tg)*`x` z+D#q-KyF5+{p$?%0f9e0`Ihe^Y^HRsGq1MK-4^`{b}dpU(9T^M6NgYU%XXcFgOY^Lbk%q0PRqOMqxv zjdP9b?x`fheDx3;Y53mDfn%0}?kaXVZw%X7H8H!N!0KQjW_Qm|+&$Mw!>+939eiNI zPQ){O*-Ys}=FCl}{^s%S+V_+SXfjqxyUN8Jd)Yo3e;#clA!{NEKLbrs&$mvI7uU$O z)3M;ojW7G={X!~@2MYxR4$|URf5vY_yy)XG8@ds(byWG3;q|dKcYwD)?``|82Q^sz zZbTe8dE`)_f*Wr#ob)O>uX){}mL~rh$=@Hr7hV4YL)~ZzHI9-)7_EHW_w`>`pGpvGq=dn2VjC?ZW&54C7W(vA1tlNHL$pTIMOS+i(o> zduKqHD*Q$w%j&DQE=&g|mgII~{%8!PI5@Z*~VP@Cw6^LFg7?gkqjDQ4#CL}!5I2s9EUhx${^-tN_IXx?tk^_72W>4(ROp_ z;UIAkd`Zs8O@W!7qC}$f%>ayve*GDtXn3u!hmqPqZC1be3rKzPeOozIHNk4AZH;qn zB_iW>$$$@&79z|{12LiN8%EH`@?Q0Ae^CYU52B2-@|bY$j;YDd-wEpuo3PfmsWyOw z7_U^hgn~5u`ncH8kSHAB6IT&!C|0y0RU%|lZb5CVVw{|WV z?lkpxx2t&w+K&sG3+%Oz_V94ie{39(c25yl zB{dO2Xu6_RuDn#PwNkNca_q;@C^DE>Ca7!Ei1*Y-F!Dv%L}ZgxQs_-Je^jj3?OQ)n z*f@`bZolhsC1vN!DEY%1`Bs(;16=yujFhpm(9*HU-HHkb(*tAdRcl5XGZ)wO33w~b`B9`M_ zzE9eq9J{BIR~jDV^ZUd768Fn_a{0<_)70uJoml593j_MQtV)>KyQ>$F+CP+w7$jnBR9JfJc(^^uynM^4mw z_c#`)BxeQg0}v@u7pnAW*V(Ikk0oq}zk6?SZsNyYn~G=GuWIw%9hVl*xcgpIK3}A@ zxcs=u2eUK%{@ODee?Jpff3`20-Q;u!n)SY2TA?g_z8Mk0{zw|aerTWp{)c|+hnzv;tuzt2#$$1=OS}G;pvvd z(~vOI)Gb+C-r;Oz6X3PP0lfCx{y@vSSL>m?N^$~Lxk`50f8vUwd55l7TWM}bsOW_p za6ffHVV}1_kfW)dt;zP<7Fx^u6MJQM(g_nZQtkb21y;FuJ?_;GQ+Lt%HY-wncz=)QBP zsrc~@stjhLf8;|T05g20pc2hBHrh6$ZTZ*igk?3~yhmnmJfEKWIrVL;%i+`bK}6*r z*W4GY1693*<*T(QLMK7 zQ&a)Aq5Gym_^LW^%Urb8_Beja;HK#hL-bqV_+04sHJiJO`11~izF=G z255`Ze>vZNJlR^^GIJ{BrDw~&W!V^A_(-lucsnC!w0}Q!-=7C(d?L4-!>-epKuc2f zVa!1kcp&ZJ>f!C{K|N5ksDkAaGUpMicg?-8CY;;g-l*(FBhxCu3Q=P9b<94bzKNhx zFP}i*-;AA0kKS(aGnFP@eA(jublGUZ2$~`*e=UAS!a^8`T#R;hv&0Jk?pV114~@!( zLMsP*8y-2uf@A?xqTglfz&|7o0N9iKCC5uQnA=QtKU`b*7jUM%e>A%oH`wuPU42Om z0C*LgAp*Hp*6AYhyUViwn#|xUSFF-1@^$Xqut7$31DWK7tSM2F>N@`+_VoF8ZjM$&o)=sqo^fe88mLj(PfGH$!wbfee4 z8SZ%W#zyotKmP%qdMP2{>rVn}f3d2U1I2j&tK0@V#bOtESujDTB@4)IY5w%RJ_hCz zJG}=QPo8QtNw^3(QGsN*CLov+NgJbL{(2o3@xkNvY4Je=S3Zp$?fV z(Vn@!&6Z==1I&eyrTy)1zJoe^d71kY=jTt6nEs1=XuPv~%Fd`3Ps6mpIZSVdi9UFeJcG#9~M zo{9Ha3xj*PipuHnf4DwWh1By}sNpO1G*na6BC#Thxg&dA)YTPp?JWl^1o!dfwo?w2 z>D<=2<8cyk_P~H9oxWpylaT1c9g@)6I?-%e6LB8$3R!`pUU+~U(*qzm_5U4X_=2x} zRg9(R@>m~Ua!qQQ)$iudRRYa#$dwnI)vnqn1gHR_iaC0>6mvao6pIQ{ zl0~JGt(`n0LKLJP-uDDZzwzjD=uQV&bU#e-9un9u?fsIbN&Ygd>2{5e8gr&?4dx(q z{^aCu!VO{)iLE>ITP1JlC#nya?Io{d-`X-8P3nL7gI>eANhG&0-wkCi zBprPBs9Zb+a$o3xvl6hU8h{*lrULQG$2u1XxvLZhdll-|Bd8e*N^~hVyVHRhC`rs3 zYbs*uf3oB-@{Yd(BYSvddHzi|Uh36?tcafZDQRb6Sx6RMFLDu3;e(1+$Sd+ST*|#> z)hlYlr>LPJN<2S0I9?_7yHqYOq+UgxlhxT%)}>o~|1f>+d_tmSpx(*ZjO%?S10ny1 zLLoVy2*n*%z<}%}m%U<)=PO%gh!4!d9l?Kle@e3Wypqkc%O?V=-jkySS5K|NRF-^P zT6!*uhF^}m?hBpMlTE%X7Nj*8yVFfil9^6Ao{IDzI8@# zf5YazF;GIVpb5MLXlIqcH7<$CrU4-7D-|SLfkNmdo03Ki$W1hBf9X2ra`sF?mW11d z`$8vXe-H;h*1=xGs&)=dAGbG`-L*{rbNr2WP#?Zu_*rGfvn%gdQS_>QjNK!GA^YgR zs1%n&{)(daP`qY;N^)3o8Fw*I+S%GrJWXdEv{up1!>LBrcP&mK1lYR$v}v30|dB;JgT$LoAhi zs^x^-ch`c{b^5N)4(=X_Lb|Dz6b8}Ztg$ashMUD2QLA_iMsx=$^HF1|f1{i1jZKjg z{<|>vy$;~@RIxe&{N|~mZDdjFMg<+KR>|Jt`&MMvgy~`K*3lZN4-Ji>A=kX$R6Nji zyRyB-;!Z`)ng`$6QtkFj7rB*FaW}YAmErf||A4|r@WCHm%Ma$21axt=Np^E9Kf(&; zf@ECg@Us8B;tFQudZ_a=f8hOO?jP3M-BU=CDwHo@aoixS>0b7}?h2kcOS%!`4z= z7d*05Vr({daEvLQiViafQLxh?e=$Nc`?{O5eZR&`MUOR!R+|Gxf8KhRRRAMMMx5SW zO8{FB6;dqBw^7V(vpOrUlYB&1M;>MHJ-gylm7NCJs`k-I*u5sbCYZicM&~bJe;1}W z0A@CPV|AHF;RX4Rv5si62OymJ--^{iPR+5KeSHDNAzgz16EATtgBy}gd@Me<~ z)LGV<2XI#60YEe142TKcKd&mFYA0VHqCt^-NG=s+;m<`8V1|tz8qm%yx+#ZH2_xgs zGjS{3Cfzu~hQlWQQAw+Jj^#eDzKlx{mBXhb)~>#|Z4Tjwf2Op&dCtqSwuH*?Va2i8IXCR8Y}E)eoo zRxXXtwkGG0sJ+c;QuXgThiyP#DNMh+B_kyD?(AWmf84tlRVu01xtS5$j%zH@J#|~! z-M;_q;Q!P+@SDJr#^9caFta1;28pcKYhkalhe*5QDvPC>(O-Zg+ z?~l%+=_UW09PVLl!U-9f>CnF<|6An+Ae``@H(3vpGN13<%Nmb(aVwd(9N41>h(Q2z z9?=S0f2M^1zeZyr8nn{I!3dB6IrX%RakWAP1tNmQE+d`Wz{C@!M{zBzwRp@Ewh(E5<`cXiLZU%S$?yoEA4c9 ztNUgbSEhtFEpPar7b*^dcOse26`&FJxb)vZF*-L1h_AS>hE7W|zM(H9fM+~q5HK-&g!6vLI~Y#r39nt+W> ze`7`w0Z{BE6RA^zHdbdKqpdG1nOGMAOYyN6=^~1=&(aaHX@j>!E%=J<_P$H($=qX; zbIQT0&4Q09RC!kK!YdTh6|cE+B)!bDbRd~eT% zvYR(J><4L=Rd|6rY7#uR09)`SLcOB7`N^V#@$GmkO?C0^M6A*eQ? zL(w3+S>EOWL*=Qw?M?bkgH2BMe^-sDspl5Y00UqT1kf{w0JhKgWD5p>3Ke_R07PL> zdc*Febm(w8eD|7wm+&mjA_`{kY?zt;2O{nBjz6*IMk&fDWhPg^s&>BZXuH~$KeX{+C08V!;yLI)Xp2icvT&E(-4<|NH{Ete3EhVMzme+t;vq8&uX7pD-8fwJ~N)4L> z3Sf}pYT>HVAxDqTedUJ!JHCFVxT}LIX0dwng2H=~0zUb_&#VGRBeAqc8!H?rDAA8P zR&e7m0_h#GJ_}lpgx+qSuG79{qy9GN1u%g^EFct#l&A01f6FTeptiybeLc6)A3o!* znLY0OxN{eb9_4=lfEf6@>cRMt%2UrLAK)1vl^%FlUYY#&#T!)vrJQGc9UlbVn0=&+ z6IH+0W0tej*O^4D?pvRTnTVRY$|nn`r9iALR0V_}@7(!}paO?4i`uuz+sM1yf)z{C zO?S@?wh=5ve-Nv7S~AZSker`c7v9wffE*`I{sNTIYvHmA=$&KJC;z1+a<8EBWS|hu z;l|394fcdH@V~bJ39MCaM1K4m3Zv-OK=-k(w(vpo4CIbI;L`2(AqV>29V8ne-%4iUSL&!*ICIDbXC1}`$T(N zOAjGtnVN_RL@QpdZz3v^)#Dd=zr#+7fULs3UY~jQX(RsoL<#K!?LDO$ntV6#99GZL z($y6*clN-uNGyLYH2o3O%D$~t)MlTmI-g~st1v?^Pib)H_)M|4%~3Mw{^^MqYJThkjoX4)e{}yysIOUu zHiL7xwr4dv_FAro?N^j3dvY_>EZqnLS zLVWek=_$6A0%-`ZG&#A;qR+MWsg``{c%vMQoHq-bF~Z|qYXX#VNewr=1kSUb^si={ ze>n+brT1bnm&zagW@c*j-cmT-miJ1cD-t;p{ z&3}Jhveldj6~46RJQdl~(tPYay`~$aH$e<0a%~*@MsmgM44s|u^~V~$f&|>4w5&|Q zf7%Zb-zOSRhoQ*odbmoI*ASn)RrxN$fATg3>JkFtLh?Sr9UW^FcsddeMsaE}x}@wa zE!_`wuk8_E(QTZ4Yw`8# zmisO-G|}YjB_64Sy~nGTqqrZB((5{bFiOj+XAW9@l5P&KAFjOsr$$n5l-3Ja zLb0HH1A>a;O?(h&8jgU%!Dnfof8|4hiUZ+A>Gg$Z&&c4(ai(p0`tc;c<4xJL-=;f0 zZET|S(JkQM0Z2wgfiMrhlB|nF|0QiOjw-oms}%+)B@4)*GX`Jl*6V6#Sj*<=IE|Wa zz8re5@eq1jr|%Rr`}cW}(oLI%vGDA*u!Mh3=jT;8^X=>7A4%B?O$?@YfB1FfkuRYl z8-8}x|4hBGIpnJ7VJyJAi_1~Q3BLdU(&_YTu6UE~*pup*#f6X3eee3eOx$hNwv(vBnf!!2rBDCKMwl~n$Q#(a8IoTPA zRFJ3_C=jtt(Rhady;yOuyw4z8S3y@n;ShX~s-w80znpM#f8oGw>;00peLN!HJ{tZ4 zl)~3B+;ZtVTe{unqaELO!!iZ*#F>^p@2PcoP5V<6}=h{V*lN zX@?{2hGE?|z?2N!KBck;kOwNT!sfwft-k?yXw|AgveVhMr5^Zenb+`!$kS-Qww>;< zgTpUhal3y3<*QpUe-n{YdK002)d0LYQpi(J$wJ5(5HH7i3yD^{CJP3+rw1z*6s0$0 z41yc(kk~*QDNk&0$7p%`F8DD=ze+h^yz1`x906UIRUN!GApP*ZJtb z5Y7zMsjoYO|NLNJEtn6OARs+5He=`INDM`Q$&#)7Ic4s?+ zGbt0-9KWGldmfb|>bl)N^l3i!$(GS9q{oyF!Q6w-jSS2cZ?c_{qZMg z=wu~?E3gp7j37V&7-Zt^!DmZz0}d+~)>COAhtZx-c13 zxal4>97L@j97;;c+<(NH-?mKqB_vhtdnuiJG@DGr9+=sYm{$L{8{9Zt6WVgg5;3d* z?__r2sA=}Sx$ld>|9vxfvI-Sp+0CQp$I7vn_)fgue~~fmp|j^AXTc|r8E?fOa^;68 z9Y3*V5Jx!B_0bR;iJsqH$|6#A%Wt0XGaLG-Ek)BeK}>KiQq1K73|>) zzZ-G1e=oz2G_!^#LSL!v&Z(N4wi?7%z_s2orA_rp`W5i!=?Di=b$v8u?NMvLfZ?P# z>b{G|)By1+(5BABP`G=u+o`X4hjv#W9{xQ@9lcY#-z2cW9)L#z0BdE>e+{AMxZ4oM zs)7|W>u1Mt)iU`jE+ZBBUnD~-l-Ro8wC)kI3^6IvBqR@Rz)FhV0XGms1sjXuK%2 zf4JfbrdzLc5p}+EsA7E33Bv+n&Cfheq4)cbSr9;7B~au<|1xpq7jPU|e1C7{&B_l< z^M8E8)o|fGrzC{;@Io>`MK}e)KKn-)ctF{BHJWp2FTC5=MBE%WC9*=ayYq>A$RrA^A_1V9vDalCYNf2Qtp!sd1{oV?N0zjd!xXCi>s$-Wj-fK7)A zfSPa#u*QO!R-kv5)}h>5;v%HH^=eEr81_cRy>oJFb(NhJ#RHo!iz4zKHs0B>|9ByC zTvN44rEE&DMORzq*8KeJ>^CO+;=(cykMM*PwuYal+Ra+dHeF1)8gvS+LI@Fce{~TN zJ`sdn1`;_pUB68|QlQ!R%$)zEFkjmDuVp>=W8*tJu_g*T;?rvX%(Fbb_^itPtHHh@ zLZCeYWdCLZaO2AwQas6XPTi~eV02v_?2^K39FFLJ)*O;?DWRn&oBWBry!Lr_?It~o z&>bzW=3Skc6!@`!d?j){E&`Z7f4Ut*bo!z?PHgr&J|T_HdYDB*MZNdr0lhZQZEb9? zHFyVzUg;cJMIs&V!I}_mtLT(UGYe z#k1Ug;dlwg2+9Ob&!M;6yHnXcwPLN7UyBuTHdl3*JEVrqft{+hQ&%Lte@JQ7$hEQn zJwtKv)`^9in*D|MDzUQOlIB3#cUoCbjzRo32*sJ5L;pdcaAtLm>$P>mc#NTGqHkvJ zcpLkFqXk1DlR(X~0_-sgr|rc)!N#wbE?u|iSl0(}6X4D#jORLBi2STk97oz>-`~H| zL&2>5)WIXRGC%FaFbpQie@*%x?>*%N%w;9|w6Ow~1z>O!)bUYb(Q2+ZBbv$H1FgEJ z?QA{pfw2Bev||~!JIu8E9PCAB(K~!Jg%NbYglPmr6m7*~ zfjq+qYN~CDy4ox$f7;@()fmzRALKK8PMtZEbXfm0!4GCQ{h)My#PHBQxH`aZi8o=|LVg5H7t&xE_pRKMu{e@pED*nrPh5+^_EGLD^I zI&MK-S{?fLagYiCF)?8G93nur+qk9Sa`8L=)SU^Pr5Q2CM z^YK8_3oon4dF8kSi3UnKs9t&Vn_>Zz$|3h?P8;bTYV&Q9jK~=nf5o~OG4XbOJTor7 zziRsSQ@Zi=e-RVOE(j%{O5kyUSQTfG3q&_j(TuPd^3 zbN&}_x^I`aR4OH~-2JOREoPQhb%1sH+EJgPzxN!9pdO%(30$_`D^yf*7ldC0E6nqz zDMfAKBG~P_|BVy?nN{9p!c%~Rih!+`FvJStBWB^if6r1Dl4D%{(*F%bHtp*Fk>@#& z{R|bZ1JDlk)ycCRR%4Wu&JKpoCzU6+%E%=LJW6#hWL~>B zS~@*S^iT3eX~VK21ExYm2b)w8>4ibNhvfo-(rkkZ6bI79>}@N93UV(i=4jZ-%MRuo zulq^le`J8f{2Y)5cuddx`~vQGY;9*aAH4JnFfZ%aPsQ@-%J+H!X?p(;>iz$;8CQK) z!(}GkPI_Ss`zaE2usY)B()dIlZ}RRzT7f-0Qg`p~Mt3<;<@*A%t?utsX_rHFSc;nJ z`IYs3sAFtx+k(798g^&$sfb6gX03B!p0zuef2p=lwsx1aZPO8NG^{9wV|F5h>vlrq zn%%%2H;kRzmcqRIHr9i)3&fSmxX~kr(aLi5eb|4Ykw)CM3 z1b;18al1L6`O*cHA@b%)dp;^KY9Wx*Y_!4c1ki}|eF?f5jq zOOV&kU4fpp5D_msi`0y^>ZsPdwvW%0i)uq6v|znEm@ZUwa{-g8Am`HE=wRobT6 zawhW0(4|uXU}HW5__S5Pj>Yl`73}itqGGO8u7Hk@ea)-iPT>gJIPn)g=m?y~f7=2F zRln0Kb$8CeK4_gSo!B%AxzYKtpx%p*N6^AHy#SnPok6RIt)-%a9TZVkz7i=^>61Nr8AK#r}H{r8js;WNAU z{CkqqfM-ZIv#Iy21#jU!5TGJ$_i-_>artCLYxsBo35dLiygWi=&kajfaqet~UH*hC zvk(PNlOY)|`GhidJ^$*}YYo<3&O8FH$sTHlZCrHfi-Ur_(h8N*19S_Of2e^P%t4x$ zvf|)?e2&Og-GZ4xA81wbYXpRWgL%_tUy}UjN8}+qaL@yR3UIpta7_agPXavqq-w4T z>}il_cmYWZkPx^8(#dUJsIa*a5xyVse)GqPefj5n^N^@JldQ z*{jf=6X3&4N9*ELXma5hN<}4UJ8tV{Wq~}mq*|*$6L&C=@%OGD768uh*eV7{>=HEK z4CM!ZZ2*`hcGtdc1Atsw;NQCp0KI_rzt>Crd-rzN2Og-fAOBqGf80Tx1s^e&)CR{T z2HDL|O18VpNalP>e5zLjq3L3cO0KWdQ_3rN?)QPSdiAiiXT7s+imH2kv2%^pK&skV zje(lnprYa+cQ6YUM$EQK_KAK8l02uqmAznQbcW}4rp4|NXVVJ_zknQWys=L{xMKhx zFDNv<+Q2jOa^W-3e_r0*e+UD7yZZ>%`Tv6WpS^a0lsH7rczUz(H>BNs-*)FShQqSg za8>ka^l(EY0NepAC3uo|4W2m2w}Fw(&Q{EJ;JLQpL->=2 z*nq>xILRtlSTNv{6y`q{kz=xu-(0toYg)xx)XMLHn> z>I?y^T?8u-SddZqzPkQVM>Ov09B!P|Q^91kp~zBm)VB*AU#Coe@6oDfQ#$ZbaLsra zp-J;5Jzh5qb+I~8 zmz9gbpUTWQ^tP`9*FR5J%e#lz^7BnXwP>0kF)`Uloc}PVWg>;-QbdT#+Qkk#Hf}x;cx9%(;JlC zRaEi;4>?B>GV9+;B+9=m8!|Bq_;6lEVvt=8+BGuPBC-`$N20dAM+Z3DEhN3;x ze>Bo<8QLZg+nJ9VsK_v%#Pd~m=HkBu=ed`>8%2)>z2&doyFW>%=OlBTd(3D?b9KV~ zf$LZvUd0s)`>jIlmMgC=v_KKtATM8VSJ6F%5Y|G?CQ}w!aS?1|qX_gg`Hlyz_TGE? zaNX#Q<#pD_QNmNI*DIlX9uEQAR5fUYe_D!dWk7HZQq{|*Fu+q@DK-5v$gxGVx7lq! zdIa;e^L1*}?&L}I>7c$miP)yMA6M%fT&DMNmAPnAFbAjVi9!*S1uGO?l&cvU)^?U6 zZJS7+_jH|omu#xz497w+6ZT$+`;3u3GI_AW<1*riR#KQu-N^xOQKk2OdC5!#e^0rV zgx?TK`4)EXj=_^dlGq`&c%254C zPoir+p_qglFvcUM{h~J5UpHsgb{@yQ?;Su|-awwkOXUlGp6ABcb96JNQ~TRfzpQ%5M- z2j8QhZ8vxE1Bt6mDalDYYd6_W;`aTvIP78Y-j8B%NYJ;ie6b;(`Du)G>$GU_(-xQB z;u0xIlGc?DpCFgR-T@OMA77)XuCBpXL~q`YW~>EsinbvjdY#{%yuD1~>j0(`8)5aQ7(1E3XXu3XW@e;5~+- zKqwL8TCPzHha06q!YTshN(h^h?LViniDtxAH&a?%oa9rMH=2!;e<4I$(8dI~%aymkE;w6S1!82*qm7_4!9NR=+=K8dz z3j7KMSwos{mRmeL}5a$1Ymq}C>@%U)?-?=iFF+4-|{nV8Dwi($B& ztS42?33E;r)0!bGm<=}h5m5#;LLQki4U;xHSku8ZUj9hyf9`?La$?q_44*`-wvNtY zmOoMiF`-FewXu5Z;Vtn*C)A&&cX|$v#BrY}(cwI%ffu(YdJIN=SGQ2vA+6*DcF)lt zn!bry7eBy+()d+TcXJ*&e;VjlKS%nlulz4)L69Of2=-Sb{qs$y=iG7D9IGx`%ZCA< zfNjboO_RQ{f2T!l2QBzCsx@*w$)nwgT^*Z|{pTJo3g#=nQY$>Grf6qq+Yl5in;TSo zsVE(-IQaWqQqQX(^}>dXAmKojAR9ZoQnUSxV@CaMl3~W-aR zrKNyg-Pf=ORk0X3JNmlcCt_doy?wf+>yPNgvAQ+Fe{*AN?Q|O5f%-LJdtQ?AB=Ml1 z@u8$>eH$w5+zDU$NaPI5f!i@{8Z}HJXB(}3O_b*Ju5d<=P2D?{pM3_i9!1YW^|Bb= zbIlqb4_31KTYP?=zf{2?_Hp zGNCo>e-4^zGut??!mu`{x)|oMF4bpjV%j59Ldm2_$8KEfDIFcX%P?p%#U*q)CO!$8 zqi!-r=jn?keqrD*d!zt&P+%V6_?q%ML{a7+Wl?qg&+E^1tZgNk#B)QEUGwYZR8#_w zjUP}`^W?ov+N%l_oWn3m>%N$sf5|<5)3j(he>!HNZpkyQ>?x+xXzLg}{_&)ZBGe8s z)(ahko>d4f`_WDxUdmbubg&R>taZ1p46>rAr57H)Y$a+rXl2=J@ip;gMxSA$!~n?A zxAj7vt%jPSYYn2{h=mDs+hJ=P9RsPA+U`L3cbe}{^qmCer9A~*bj_%uvy7og*4On< zf1Fr06TRdTt=NZZ?CxnV^$lbi#wGlWUzmXFaaJBv=C(MSTfconkIu$!PIO6gIN_s` z@uaQhsZhft|LnSWBDzlNp!8!-9O=h_sjx#wzjefHX_h5AmUW-ct}E4_m|TycuneQ; zOh2?|Gs)AGeh;ljjO+t2I)2B=(eKP}e+0kNU*59{BbVDk6K`<1KYgQc#X*SX}bKLBF-OHZgh>5m$?e9R976~e~0B6e_o7HC=VbB-*)&s*e%AKlv*j|(@QTEUd~J@t;ZqRPcg>!k=$<6Z2vm5^7(!icVh*!rnKeP`R8LUA#tnths;ku z&+ZGjB;&B*sl=n%hlmbqKV+t^XYVEYA0qmdsv2-w{Lypq;p6n@EXE7we>AEnzkOn! zu!NkL&YOvi$8gO3tCwD?j!sSEn3y=@!7%TFA2Qwkx+ayz8j09{2lsR z8v5(bolbV)w}e`zhIj};lbu68z4T5-7?ym`zCc`AzIl&YwDWsyV%hRr)&q1m(X8tA zrw`*ZqodT~fHz*UDS5CIy!~rA-Fn%Sxrs#0$Llfl;dwerjC{Sfe^FV{PBHJ0hN%5R zi-jGnTrd!XSeOIp5NI(&nan&uEKE#C8DngoNMe6kA5Xp`ZN=Q?SLx{gl`bh`>k>-rRfm5%lIG~;E%s0q`S_G61Pec!c5f0xP&0qe)V zh&lh6`r|-ZTgf*}^j2v6rs4YNK|8m_AK^ceI(POY#Yz)RPWKoxN54El4lYwB zW=30xP97%LhUT;J%k(5~!}a$pyO!Fe?8&%TBg9K-B-~k2=3L9*dOvNAUfdj8tyQ7b zMZbCWWzS8`lFxTjKvz^aJwzn-e z&g=}cHDeFJ!*7kX6we7hjcGSUu!;${>stLf3mbcRWWSJa({U}gS<|1tZza$!{;rA! zbMr)(UuW}EsjY5;nRZLg%)%$upOGQ)9}S|uV%{z-f1&Oa!#LaVGo||$*80acR?qld zSyRp4hqJFqkMeI_i~SLmEfvEdGu|+36m98^ORV)c^cVlKnQ01h^a>SS0ygFQ`ImJG z-GSLnd577AYrz}KW^U8{Z(y8bCN64LhksmTjgq#10h+BU$vMNd>kDigQU7`AxxV>+ zn6BTge>wLTrCZ_zX`4v$(B$%msusyUE;p?Ck>dm8!jo@{#@mtXyvK`9m+>~f3f667 z`G9~pB>fA63gRD0&m#q*?by`By)xYlV!QvzQA<_Va;T71BVzY+sHFSF6H)}Hq~i*U ztJ{Y=c7zh6TOLvB9#F#dSIXj7SLfF|^}iyme{5vWTF84S9&)uQK5Vh)isTq#loa=a z-r5=Wo>q9)MrTkh*G5?>e&-i(68mhAEK~&xq)i0(qJ6l?!r$tM4|c@qql23cMgRng zMzF%n40?|0uN+G>Gh!{JG(rS`#j&kl!1=t7?EYu0xz&!1>)c~oXr!Cgxw;RVt2U2i#f^qav} z!q@n8{*AbqX*P2ev(Ei#nkJF#*M(%T>6Cs))5vo1(s$A5D+1=~-f4Y*cw8-+m{>;o zCdN4Wb$4)!mu|yG;-cfuhlaJ$hqP};f7^{jp0|v7C4cd5VZqBk?&tHH3z_o>nnTUY z^OHS%R+u3P(>@8yKHL%(yHoF*jxI6NQpNl zLKs;QJF}c6G-D96b3W9+G<;e)>W4mVbiH%qfIDA`l8vH3u8m@@fO3UgfSgQSe?w=y z5&cnT)PhP$j;Ouu#*gkmND3TcZhi?+yQkcjhm`!{!@ZLowa`CyqCPT{PaJaMbe%Mv zjxrOQe)esBn?>x_$x*~gF{Zb`DvKKJ|Ll-(3Wf8S)q7m}zSYUVLbTh=-v{S%p8MP+r8&s14mE&=8w zJl6^29JlL;SEEE)T<0&~$Q)<8TkFFzu9Pq>M`_7SV=Q(=?Nm|c>_iZ(R@V?;k(V})Xi|I^urx5b@#TFZHzMLeU` zRrl!{XeQj{C{?}p_cfy4f5rmoB#qA#3HzP0QJ=VRrcTuPnZ8P>?Gb;wIp)@#s+Yr< zpJ)nWh2Zap0Tf2(O@9HyU$&A6H;K{P915HB`0H6)e<$=;6B&P0i_%CO z>sj$A_BwrZgR{XV%=hCHz8aya*GnfC!+ejJ>^&Q)J48Q=7w@Faf6ll5QF>JQUiFi{ zR7yp}+lh)M7aKe08rKfXnwrNQp#VcbyuZG|Q4cO$)4N?=4w%;iN@t*|YFI$Y9HJuY zp(?pJb zOL7`#eQzkm(O#`;w`P9K{h%?D9h8Kfw?g*S7r7r&q+#x>F}k*&zq z!%cdsAsV%1+V!?dE^;Aaa`n7-u0B$-Wd_+ryq`bG@(>QReXw7#5R`U?BwSVfppo2L|IOy|T8pFkFd$5sy(=vo?Vvm#bWP@{ssJx8`Ok7nt z>NfdHG;{SQ(X5v(bHpTK=BCS+wWOxmwao?3)pf<>>jf##K0EGr+-Kk@jlBCfH1;~H zqr^H#=)S-{mEe1=)Ax1^Pc95b$0wmB`V4kg9_w$x@OS&XMt?MBo%9i$BZl$J^$Q(% zwrdJ6kDCya+&5)v+kHBQ`!%tZ*35i>-#PJ~O<(qN#ccYWj=S;%5pk8_ny6r!@wyB} z_0YVX-nLGee-oaGbi8PXv;6XBvp&i?M@&J1@Nh&-kl)h61A4&ou&mVmKHghiF9c#N z)0h!$%!UUFHh*F8`beN6i=uZi_l|o0ZlgkK_;`-hL)>}zUGHOUQw3dfRopfDP!#l+ zWz)UaV|}$>jvBpV2l}-W+hY!VKz~$A707{}Rm;y+6TZIs1kG*UPP$NMc0}tUWqyl( zq^Xl$YY0c)bGuD9LvR*%tBK<3dfio9MV)V-x605Q%zs-w@d+a*8b@5@qR4kA_nZ2eGOFw1l@UD zJ%E&IIW?%IXbnQ%zA4Y`&6Kfb(Mo(^b}XAb&Kw>7G~JTziSXGx{IqS2{m0ZFwg4nI2Z5jj zpSE#9h1*?gx@h~^ye8<3r*^#oaEV6(5V!=C1HAxWF(NY{5P?v6aV=~2!E!zT287r? z`+toYGEi945LsAR6VfjP;VG|BYgW@}xaMUE(c5Ew%i3J1f~UdSl3z~HIUQ?TV3{JP zQN%cEdgOY-%{p8TBRe22mQhDsmJp9-ggVZ0f%@WJC!V&48`t2oPRy+ zi8|IeB%2~61W{2jZ*&z+PN_JRqFU{c9;{d#tYANwmyOt-`P0l`ZFTKf*9|92+IuFe z=MHBp!QQ93#758Su5F_p4Cb)k?jb^#RCP$P&u1ZkaV;*&gm*M>tYbZLZJlU`SaWOs zQ}1F);Dr*bYk7`?gT>Ou%8-~&L4QV&@Fi`tGbTc+mLP}tSvaNVsT0IhMHIEs;M?&b@?$@1tr=fBzSpQhc~FiYP@}M z!*6TGDoZjQh)>KP#08LaNK>0)J3Y_oy2gMCAN=rrf$bfO_UDwTkD`Zdw>puN03JrD2{9DM{S~!Bw%_H(&rfd%&R-{I@O+F@bP}n~|`X zo23?{KxoyA$;xTrFw2-aa^!NZi>5x@&}JmVghWtH5OTxhJb%QpzmC1Mro^#0E_zs^ z=56!a-l6jzYiwyZUxf!RCQ={n4+%qd-LA5Sn7L zbKtH$2wCyJ)xcLoC6GagK>6F@#wK3*lyEXg4Re;<^`K&Pti7TiuwhPB z^>3A9kC zs9v243vnUSAu-ALJ0y*ILpwkA#A8ebn5bPK)YgV5rbOZxm}Vw*ZqJxPk@Og8d@%2% zy>4)slYjm-fP%ntHqDS%5bp38fOGyWdXfS3>kNU=Yr0yonBQ^df=HdGDZVXMJ)D_D ziqXU%NP76ey}~PUj!k2Y64rHzt`!Bs;y_wT4mV2RMkQ+Ak?Zgct;EBEmM4>lczR-( z8hwh6Xq1#r6fvzxDG@!lY1BK~cmYl4co&!$4|j$xU(3~|PlNq1bwQ`t3r{y`(>!%v zxiG>s`-qsv{rg<=TUyka!D4Y>gczYQT~jT8KD8Jg4~1zbzy zdw)CDR1=4x9VU0mbqc>-!z(rFh@=>{j*A;|6tkISx5;Ml&3(0=oh!Gyy_I|`^pwWQ zOCo2i3C%5GFlaNy;&UUnM=m@2np2ubu1A)g*}7aA$*^VPZFVzQdE2$LZMKoAf*@DB zq`>VByBR6`0A``6`crbrRFTpCWR1HM<$q1uaE&xIX;M9M5^nHula7l&m51L{paQUJ zX$J8;sbWm$+ZNsqv#7JEv&-Lx@a2(^kur)8Ut^A|3n^q%9Fb$akpD?d=~73T)6ITh zRAH*jV3LBLo(GiD8-(R-fQ}vmU=}1v$-%MU(ukQO+AT^@S-+#k{q0r9rV^Dj=nvv&6^Y)7MbPAs)2HD4u zktbPe9aA#uIx`+lP9gHy)$qEpg~C&#UqyPIp&sw-UKAD>)=WYNZUY^o#n7vUI}!o^ z6U9wUx?fL`BZjvyi@;j+?^sKHav zmq1e~5Zq9{(K>_e(f*g70sCTIe&(bUBtp|%X~KNzk|=Y#V*h%@S?Rk%Z+~ANJ6vN* zxZ_HhvW$9SOO>q~D4Ce;RJ_@Q?bz9w36YXNEF3j@QP>*XA|F^V7Jsj)Or~1?lXR>q zg~m-#*8ZIfXZO@Bs2b9h4CgMg*>{iFw#f%==A5r#^2l9Z(|hLJ8bh#gC5b`!YbPT1XJVrLfbIFLN5>>xUCdikbgN>6R>!Q43wC{ zOy1c8>~u_YhExT*z1F`vgPxeIB1KgvisT)iMmRa}KZLR5(csZgBhz9Uxy}f5649kN zo5|_Mm+4)?8`CEv@ym6-1@?oORMU{qApmH(VRi@ba8L)jm>%acZV*U92r33zPiQX}VaZ_`Nn6gjCcf;PGm?uo7jG?Ml(DL zYwU5g8$0n~GO`5B48a^xGuN3W?j4iSr;d+8EtDUkGgI zeYuNiZ)liwy%}IN>uOdIJZ=_XbFi(DH`j>FV`b&9Wnu&v-8x)~--&2AvzYdkDmN4n zM@N3MLXQs^N0K-MFraaflD!*tn#&$<6>GMK#$M)x&VSu6UlZr1Ev6-h+$6d(&H1%( zSkD|NHT^eW^iVop=6-P$Gk{)A%Hp1ltZ@~1LO-%%CuzSWn1*MVxgP@IBGt)2#OXxw z-$dwO05zvC#)A>yOEb3+*ReEMjcH1lk`Qw6H+VZM=U?*{=vTH-4P3}K!KL4WX>eF9 zTgcB~Fn^0YOGCVLRyW9SXVWfEz6Re^4{ubEk#CWo+iH3!ZIodA(XvD8PjZQ())PQK#DC&R5RbvNEAS6YosJ?pKRBOa$Xk4F zPHN$*6~;xBnhe548?S*e)rr!{f{9@HVHCo`6ymQbXk2NX@3fEP09XDq4OiM3A(}Pj zN-w7@{rIH71jlwQ{fzcXzn=AUs0MxGlWe%#W*rs)>4gtQAB;u{U&!y^+qZC=?VCpN zL4Qq7hYklXmLyFo|1HcL|5Jr2J0?bkpVa>2$3qY zD&!m>ljnVeNtj+yl0(2lm8#stC<=O7>s0ca#JV05(td5s8*&zLOZ6)9`+vM6dHVt{ z-+xX|^f6e?GZiGxq$PoHzbj8PA=81VibCF!mQtslYJNRF6xQQFG$&dPvl8j3CTdv% zAig2!p))L4@>nP{|8T&6z*TaFeog8rO=SX8O3JhLevjM@mO77|42@?Ev>G>G)2}~k zV961=1N6JS&X?@LGYx>IdVgs37!hr(*IK;*mDMT^NGu2$7jpyz&}8ReHnK#PB#>fq5+H4&h{;m8_#h@&UA{;O z2BvknB&p@>amAr-amD;kQuldNAFTWHr9xmjT*azfkU<(Ephl2HM1PQ2F`^mIAD-{t zz|{(tjOfgy2x&OzKxhd=>Lg?>juLbt_8i=3Uu{Zi=U>fTliRPM&W(3*)UmVy?+__| zNjwu3?`UZ=$OE{KwFn*_a;q#y9sWBSloy1Ml9E!ji8YIx^1@X{82P}$C-UiK@M^=k zt=cJ%f}QtsQc|@}rhij6MVzZw^Q-%PTQ=(RIPcuextmw;V9z)I-D;|1w5lpG6C2r3B9s71_ z*Ml0rQGc6?QNM(>F-uFUgc)=32y-4s-7H-`9lgvX=&fo=L&Ms|k4A|`K#wZqCGkzA zqf^y}?>~-?9!g6~8+uq3Fu>I{S|%Eo0iJQvssRS>?+#jm_v4O0Iln?u>#2g<)yY*U zqxjNvB(fzK7=LmeBxx?m3cTD39jX@#eZRl9;+o&jRiGh)BEA$3p`;`sA_XXl`X&jH z2DsZF$Yk2&tv`^v<0Tm;!`86|KCdZ(!2|k5qz(`eP*kWLvpoC9LJH+S+biy^|9<;P zMoHGcOY!4_mrcGBxr6bJTxkv>*mzo1Qenv_l1*ms-+yn`?ra)Gmcc7Kt_26mGn96S ze2~G-$s~HtN!7x2CBcs;Nu<=bMgdfZe0BQ<>1{wn5<{Aq|L(!3eWh+{N)+)7rVAh} zoPsu<+fhQIhT3IAu3|+tiGROh|JFY5sJ+59iCi%qs|Ho_NL4FF5>W^(31c`3Ex8cn z6$u}aDSw0u5Cjz5Tw}#&n4|k{B^A8Z)-efA#SkLabAnFH(`Duv(m6WsVww|*=`K0B z$_=;@ANw6k*coiC?SCpN%zyCdn$+VgZ@(e(jPMGVEM#t7fB%v9T|kf>P83`UurSQC zIk>9Ul83y@y10YP&CRXI&ApUmYh$HvI;qb5%6|!vQLi<~iZ4LGk9#(8WF|~YkW3I= zfUt&3nLx;IB2sR?&OxpE=Wo4znQr6T^I-SEDD_hrvTaMH>G0t+<$syEwrK%Pv-}2NSxPm6}je zL4SQ)_mZQ7D~Hd>dVP+}nya0+%-|7Y<=1CI^fw zIgc5=T2Ah&N)DkC`w zZA2O+wGJq2=x^T9R83)Co|nylvy>w;?2;fR@LLl3yFSAPMO zq{#EeCxR7$CjD}jfK0dn9t(a&0)USQ@(Og_KxhdkMiDh?fY?kkC(o7;_DvAoNH4V0 zzdsu(6Jak^uW()7BWfkdrlCn(gp@KILQ5Q%0@wght=%f(F|K~Ij> zIG2SIY;j@^Kg&M)eIg{}ZVgjMwSPn>K}e93WuzDm@fhh`NhkAWN#ro|WH|W~330I- zMh|MJt^53W%!nJGNZv9u6xNlJOblplm$H`ByJg5<3g(Oxd##=i*aeUcdT&68!YM2v zpMfugX$j*&4k6*!ix=RExXdft=VQaaZlwF*GRh-D@wi)ZfB!!Jik)+h!G9nT1*Dh@ zJS)uy9-1YBkP@ka;)M&X3W=lOii&`egfC|S)WdNOP&H?nN56k*HJc0z`l>ez5mDbx zWKlKguVq6}==4u953@=+vED%FsR=l<07W`pldM^MSfsgec|^!t-y8<;h*&eV4>iOS zg<~dcpa;)Zog)RT)VXjFPJa+$=5R3P6qa0({KH~3)B^34 zlAK5e)6_sla4c4*<)Y-`0s;>~hpURY#iU6A4F`xKo@bCNBlo=MB^a{*2Kdk6XBkI7 zg_uVGM^KV*8zNSwC6*zUXx)&=JQH4$2u?AE7Xz{zL#c%Z#sQF8D1Y{5$qGuMgxg}_ z^JD-kxe0}xx?B z!RPEGIo_Na2FZA{I34i(4Oh7=;*}~Fa|(C>FyL+_><3B54Un_GhI zZUL_#gwt2#XK6s21%JyuG#Mp5)Pan1o2=Gjp01?^7lLZJOn{arX%XiBSR>iRl9;E% z`)@DFu#ed@Lu2_07F7TtWy54TRAHx1Ewxm;r5D5EJD)5Tx>+I9|(2=ax$T$nnj({ zAOP|Ti0Ui9=Va%Yshxl(l0l@H!aoxz}1GoIJc z_*Y53tRA|~`hRW3M#4t?+uFc&k>^@cxw;T85GHkAG=QxcEupP2zQ}xE);;{3UD* zESO$DSjn}!)6Ta%_OlG-5i7rxr2C*^LqdX^HWl)>72x3vQdN@ZVzBMtfelp%lmf#K zv{zS`sFvwcv*oTEwK{kd@9&8`AjV~#U6g|5E{rDq&ESYLiZz+Oa6|SdxKO*zmn2ls zRS3rb;(rc2q>wok!AuRt8URHzHQ6~5rYP`3g~JJ%M+^ZhH6LJdQrc6T+h_C>oUY67 z*Gsz!+tm85e>e15>ysL|E?~1Al~dQx0q3t1WaXcY6Rf;@C=pG(|;~17F|t7@ytYKAcTOS5sxu#MuM;5 zB?)LsW}qj)-@ihBW(SH(zZ4@gH68jKggLc3oQ%+B;O7w2#`C37@C;f?h-XXnzs+WO z@RoIBbS*nwCJEddZ6|bpZ_O@r(McZlGy_2l)FtrZ0&f5TK9fSqQQ?I4(vs(oP*Q%6}yRxvC0S4-GL88Xz`^naBlcDdQ;tCqWNn zffQeP9GQ4UW7cqLS+nV5E@Gnaa1xNQ!Bzvq!eeq4fAo_@lb^aFqs9$r+AuRvAZy%) z&BXzET9V*4AWBU*$T3|;l&F@>1sJ;iVqrCAK}oXGXGGzoLqbp@o)+>nU0ozgRDT5P zD9>WW;P7G@i%(nOjqF^HJef3)G&{xZBsqchvRoTDJwM7|kPzcu$T`|`H^~VK06aeh zJV$ex@UtMmpM?fLUWu6+^shA|71kWoU&=_u$2gG9y|j8O``#xbmC$rw3~>S z5fa5i!861cg@`)GVmhhsqR!ldq9p_vLV(BLmv9IPd5TKO!!BVKUAEK z2qXuf0-y|cooN6jGvI7W?1iUG2~I>A=UAUH_p_XvV3&nJ^mu5=^?7vpZ|hSO==D0^ zTy?%PBS4WbBVn_*KOi|P^0M8pZ6t5xy5h?{N7rlaQsUeu=ZL5ww||L9X@xaamo5Og zD?|-MPK>~L5OsP8ngmKp`Sxv#1V3#!au_ApSWyBL5k^ujm*x~O+F&x$#{6qJ7es>` zlDv84E@~LWc4>?x5}XYQ2W<*#V~kh@@kGC=oE1WyMHLtY)<|Y9DIy9zHOiDy2L{h{ zdZTiE62K=1=C`x3NPnd!Jg;N0)E{Smx351^;5Q&LE9sCI;e6+r9yj@4HFASce*P^@ zfcJ|4&o%)ny-}AafkZd8u$;W4kBQN`G5j`!6@bDd1d>4lLK>X$0UcN`_`i=+)ws@o zJ^RFzQB&@Y9M&>zb^<{H1DFHw`T*&fHYB*4HcSC&31|!mBY(+FB1$uzI5S~7K042w zHL_sWYksTkl>&w?1y0w_E6ytV>yKWS4jg6Q9=#^_G^d7MR}dI}GVbudM<~Iw>k#mq z8RYMxCxB0#nlv4LTI`doVc=1^ z-S3kyb3oj=6n{4-TIqmc&P)U~6HvcPYN>q&E}+S75Mi~5X*2lwG-_(n)Trq4Zs1t1 z`R1-Vw;MV?UwdLXGJajre*}#1$oMrfIp_BBnsTtP5$?JnMoq>=ICM{~P6Xazjuw1{ z5SLT%3zVi(@V$>G%Ia8aoS@es0!!mLCdQjplu<+`Tz?QQQd&?lflLkn8H_YNBn|?( z`0=z*UN8s-6qeL#J##Ujv5d7sl@Tya8Y^|?VXZpm>7<+C5EdT9V;(D@*xg)Dl_I(3 zk+vb=Z^fJ=6LUu&wLcQ$&0zCA>iM00=BH}~?L)*?8r+1NJ3BH1mE#6s{e~d3hzLhM z0a-*%!he_Mm64H#L~7`9b3sh!ceA!lqD{|%x9^4!qew{@YlzeU3&EwPO8b|b0fWG0 zq6*<-1cYn&#gCnZ@~klPiFe>^ZNDig5MS}k3Q=menebxfK5B@N5IMbut}qW*T;?dZ zKX=Uv|Cmj+;80EFGn*!#Yzm(Q{*4>i%snP3o@{t^1pKk;Se1`MoU7y0ccPaLi~?5xSWXyKsx{B zY@AIXmaE)1CH?C?*~t`^3No5fQ;u0U=EU`Af>gU@J)=)Wrn%1v#CXTPevh6-NmM z0=0yBm^el1q%Yme|22X2vrUN0Ko9hkzT9|1NrdbDemBRB4?k0Ec4LP(fdPbrzulO;W9Q zi}HUzNdXKcC2b2A7*XoKxFzr~#F;EboIuRyeq47=LV@=cHNgW+K+J4Hjw9Ct7k?fN zo*C%%sR`4sx7YbnB(&@2u1RG$x9g{^5K*xFxlp7GpXC|>8 za|k)$Q%Hd1VUGFlkTnG#BA#BCryP1ygA&qjvXs$`5Q}JrM2(e3tXO$d-lXjZkV@Md zF32@O!l*&G4+QN$nFlm7j+QKCj(^bl-mpKt5LsFX(K!+#;&bQEkq{FTgP)QBd_h7= zN6$b;%gDve#B)PTT-D?}ujHl65;vu8^QrMm3#j}2nFp#o5um|{XB&m1QU|3=2E|); zc{)1FEn?~Hbn13Z719}9JQ#J$d>USTpTXZtZsz)BgH}eFKY=_09#p_HQGbsJ5Af*q z&1HtMAF!Dm@YV&>EiOjgGgZI}alFP#*JAlb;i7OY^d@r|`e_;ZJgoD)Dw^;n!sBL- zFRM_r8v81n!n}CPrnaA{LN0YZG7*c67e)*VMO~7-M25yAIP^+ip+#=?0uM1sj;l3= zC!3Xw+Hz!Lt1OnQEOz28jDKGG2wm$+lLIN>9VC~C9AHkeV`5I1B-G8s(R^cSEqal{ zWYawH;)2OWC&dlL&z?{|VXk3{cs9|KgP=E4YdMD`$sq}5*^N|lyd-8ROzKb)360Px zbD>xF_ddyGrF?CPynU#~$=mB&BtYs`!#-&OGsw%2<$jJ8EKBh}e}4njlte!i;lUR+;(&6sN`tQ zB#b6cQ;eP7_JX2fQ6Z9Mj}q3}Kmxu%;G`5X2jV zWo{Y9vJ9OoAO8lEAAj*LnqWZLwdt_Ms8u$J3Br5P+I}o{(`<-o`a75mIJq#bB}}tY z4TqH{y{Yp}7@?EI8)um$p-#!0ABp6Q6lRYUjxpy+L?h#Qgfe!qRIF6Qz(}JTa;aGQ zfnkQba?LG9B5^L3^HDH9O=+X|OmT$Y+b>LdyGBaMM3;$d41X^aC6=e0mq+Arex z-@j<1)8e_3r6qvBeP&KM1t(@>W6NXtf|e^wK`@mb4K=hkq-rvqmo$I6FW8x)rovdM zAi^SR#2aOq#G5cN0gROI;3}I5TD)aYe07!Qg%Hzw6n>ibd5f00ltxaHikD_p{F~ZI z!C$w3g`(wiHh=#^*(;H&PloOTA)uqM7Eu@T)^b6uMICA4IasPheS|aT0)B4;>b0dX4Yg3F8b5+fc5XtK_Wigg zU!^3M~!@?i%eg6R>tO4sX~f2RtagkTd+@q$mdgiIuDE(^Ca&HZm= zIQyg=lPVM6)P6_*a>G;521?}q3+&au!J+GQ`UYl#as(*O+2iHjW@G7iDunH=;$Qe`G8!^>v z?ck2Hj83qOjsqSmKt#d81Mtb{;x=E2PM0#AG&q_jjVFCf8g7|k*_Qx32nshr0BWV-eKklW^{ zNq=iMVNG@1oZ*Arsu)G_LMCJKs%ZEdbTeN5{Dp8!BR<*0 ziyGpSE=cxKdJX$t^tR%)D|d3vFJPHP6;hVKoTj@Cq&4tAvPletJTp@=nKSYH;x;_M z&Cxfg9f;t0LHB`G{Bs|hIhdhYLS=|RNq=t+HP)oIq|(&$@OIL_;UYYY=p1E7nJyy0 zpk+6^grp>`mj4Yl@a7;)6XHNp%>kKIiA*Zz&|A6<`wK=#Swi@xNm2*ZO;>p{eU}4S zY$5^t>Vf#B(M%+bW+cQK0YBzw7+9tA+G>PpYtL>zkw3GYx6Ee-H0+l@2=MnMLUl#;qpi2yL`@BQ-z_!ms2 zRRKtJDg|vy{`pu%c?zRgVs=5FlAc&f@a0v+t5{+xqeu*^D1$Nan^(`QFI{XC)5{B% zf?944=&W*C*+|QM!-%tC+0ouH@PBWqb}30aeJu8DNtS$KMT*bsrj?DCIM@*m64t7;Qa zDq8T(e=DAdHcKV797#xumpVwZE`26RtKy$00eWts0pA@%YdK-bT81&PHh;TRU_yX! z6!;v|MENPO<-!kBa0H8or`0l7giXBQ2;JPu!K#wSmJvM>Q^n28J*B;WL+P7~`O1|h zM}})BGpDXm1DeJUkS2?hp`FpY+zMEQZNZ`8tI+9EQe5ypd#l#_F;*9B` zHtzGHJVNR>aayoSj+>K5>lo46^9$u_xT)sTnf#~p8sbHd%D|+wd#8{-f%?irXP1H6 zLum&%Ce$Sk@EKhy%vq^@Ci@Vhed~@JUb~n;8Nh?0#|Ma|Pd+dZ$bTwKQ&i@lG-gx0 zb5PsgQ~|>=%IFe;@VbT2ov+-5)4-fGIrRECZobA*%BN{uB2|wg)JQP7953-EOq-0P z=-Na=3nPUA&bl74{oq^CI9j|Lq~ zU4vk;5pN-z21*Fy+!0v#_rlhqX|?&u?2x1#l`nSsTy~* zw4@>=UnjRdtv&e$t14rdB14Pllwl?Uc`lZ?^S4uoVk0pX4u6f!+7FLns^{2C^~#Vo zgfQn#puVm0yiENtUv|v^){@|prm^Jsc%}B+^T3+GRt*kqVa>-TAl!@?!U?3o4Ui8I zCSwHMaD>q+oB06?phy;RNt@!UlOV|(!UT{x03AG`7sTHY#0w;q!rbj5da7u_k@|~x z-&~=uXNyN75}qgg6=@QP57=NWO)ygUP4K67BIr~S;JYOek@JZ@PQU}S)jHT;Ux+QA&N zkR$(cm-hvh&W`*`t*JsJqt`7)U0&aEBMwcf*ju^si%U4u;^r@aNTef>x)A|{KzM;4 zVwev`*MAa>E_FMAVKN)mGGW$Igp@`qHUx`|=tarrpyU(F(6~T}6tMpN<#d1)l7Nob z01;pThQGAK4F6ViuSOrsxn|EREnw7Bsp>#k8IGAWdX>x$PF#+n~YeICr zpL{|90+{g<(La(FbCMlJ5YhvQ@UooGpm(O*1b^ZOk`wT&`#@F(D1y;*SlXALPy%rP z`2$7qsgec|*EDj1z;FZDx|WHQ1;3ecHz(xkdyL9(n3dSJPGRD4DD{Oz#Jm zxxn`jeg*(OkXBv*>%3?g?}H&1$v2CHj@aw2tcmAE^YvSD}YAH8!j5D z8c%hjQr?e;QiAf0#?Tn^pj3Ho@}WJ!Oa{Yh4(2#c8%iOV z7SG+@P!jlOXAc$qxL_vKEwSTVM0qTn* zGO5Bbsq{9UpF`*1Qo-PV(v|=v_M5%Fm}qe@ika8cGV9c`>9UD3cVR7FFeq!O&a`+8 z7(~)4@4v#Nlgu12MK+PwobO4p_#hK&kntwdGLD7#d^Zsqm^-s5ZF4dZQ=h-J zgz$0|FjUO&Yij&{G*}=ke$>yY0aW5(Ejoauk^#jNA);>0rBh(lru?AoVg#W1l0>2b z;E4&f*aewT$7UIcw0{OgtkKC6Rw_y=BN0jws0c7zK-ta(Ez%(07r^;Tqd|SjR#JFU z@=rGXv$8Hg(WdupiieUP{B@;ZhEL!Q#VeO}ct;ZxejvaJ0&~`*A$n|$Q|QQ1vhd{( zrq}BVl$80RO}bSY>?7tD)$iOX0}>c&n4kX27)Tls9iyMIC;_0#UmOq&!%$``xP0fGjE) zl&&2VZ}vjc5K6puNyaXqOnZT<{fZD^f-Wtr{Guk{LvUIZ;M@t@J=_F=O%p7~fTBvt zn@RGQ4Hw5lS-~o<4(Div`};fnBf}>wRAgL*F28gsr+*nEwccuwM(%%XsM*xzyTFbEbOCTuKn)Cti0GLmyByN&4niQ-gRWOIY zm6?}NOG>i2{_2St!THG+H^BU-aW~$>0ae%JZ#7Ah0O$~u9qF=q(P}Nc;OtW>&5O^t ze-Ru7%qrZ4UK0?HU|If*n*e}`dyVH!Oiaj;_nm#KPM*(&t0$S&n!zIwHmbV--_iYQx6 zlXusuc<}P~=spU51Oujo^5k8NboHaD21>WjNZd#SbsfQSw;0Y>m0(J#s1Vk7p6H2+ z6Mr-u6&(RRAW!BB{g-v#H{~bOPW&C%Od|}Y={BpXybNhAO{@bhJ+%(J#Pl~(%d(@4 zhjd@mn%c>xpSytK8c^*B8G?^=6A}DNc|a9phC=~bqz_~>;afI{(1`(M$^@YxJCu}Q z@SdeQd=Wa{An6$b#uJk?CoLl_&46>H`G3{^$V~q$#_;gX-p^!c`s62z1t37-OR^Uj zqLyR3 zFHSdK8Z#)~J}BO)Wsz8`*5U>D?!jp#YVJ}hRw|=O_Y`ZFOXtCm{D&bCEfmi+>wm7D zcT4f6OD!nrWom}&HU16WIeJ`a6DNdB`N z;P6g>Y97xw%(raBhvpqkIC_o2l=Ksdz(u$V-7@Gg3V$*Ik~lZ_>2BI}Sj5A{zME@n z*QYP`Juuq~oBm+~)cF6T#@{Djc7M&e8*|F_F9rb$s40lLmpeGvQCJ(LWP{e6mQ3d9 zG8q)_C|Gd?C?N)fwycX^VjY`xBr;W_0P79ZK^l`4wcBpZo1!U~gSgEyEo zrx!g}=`Fwl3P!-okp`tc5Wk`81SKN<|I#eWHzqC25W zI|oQDEa=Aw^zG(`tirMhrlHd*{!TG`L%IPM;9(D?Wq{F_SbdGIVTx#uFQYXUKP^rF zU11+uaoqRa2JyT6q-)Ee@_y^dJt_~inK{}(Ml?8A188^<6Cg137j6tG*Yls(`RE-W z#UU43Va1)r^s6}}#l=>g{C}&|WNM(M2YK*o9r@POUYQdX@-K|zY$jkqz7+!~tEHAW zP$})gQ!C-1(oO+DpKl$=L7C(j&+-=&K=VP*3&_oiHy(^$Zu7ltrjr7i1Zi#pk_7k` zK+8q{lTB419zdQ@M`{$1WYWB?dT2;Wm=^#2N#WX(jVojR%maHeu&oA4kVQm zty_VhF+W0})L66w$A5a4I48C~A+qLUl#+waGG}RV3TngPd!`QHVWk_iW)cB6sKd8Q zua%=d@oK$z6Q%*=Kws4*(!Y~c%Ydr~5iadVA(5h2MN`9ODUBgPBjce!6@L%XwSyWs ztp;Qaz@vb}Iiwo{&_ZD%U9J}eG6=!7fDo`waaJ=crnny=y--Y6bPPjMO5vL#!b@OoVa`Y|!X zGPus7sED2@)p?Twn9=4E7#q145_FLu&@e8M#!ALnVb^))GJw{`1h3PXMn4@Qp9(4P|g~vLA&) z%(Ngt8~;z*fa(bHjEWNQ+JGRAVH}P-q<5kBy-M%Er+-e!9q?~sDgo|r^5yjQ^mHAH zgu|?F52W*{Yy4`<^w{h~51t95BJAsT8SSqD9D@)qmD9+409dX6qitTOYXWND zCoZ!3niy^1+fkvD<;-3VxSEi5aGQ?0Bt75$_d%fhAi5CJ>Ou>I2_2x8y!s~%=>V2Q zApx1=lm6VxG_jfu!G9A}hmH4MgA7hfko>MJC4VK@Lcr1x6ikLL&1k}p*O(IE!hq!k zxWs`FkyVy9;}XeESBCoz>~PLu*W)VGWM+@5*OtNBvMh_6z`c$ZuN>y9W0OzB`pgep zp3hchQLewbh37d)l)}pL*{8!67CDbvV{@)rl$%Tq&t(=~ayV#kn%ni0|A-dli__PY zh<^_b_PU~%#8(nx%Ovt$KDEUQ?PaF!`2CBN&2=n`T_; z&AKKZsH;4={|{C`R}0S0xH%YL23P6tfq!JIjx+&K1$^rdzyv;_{~t1TFotoW`LKMY zdVDdUUIBxJ!9;R2dIEVio_CJ+?nfPSbSL@@_PdKG{deU_*8-=}Kf(oEDnSd-Pz%P{ zJ&IR;WE38({f@eQQfH_NRVeG>jy&JcC@shnZp*U+;ctq0O%-d>pxMUNd_fJDcA-q5O>1RtvJ?&%5z}TUL;akYnw%F{e%=@A z6kXFe-C>u%WxZ~E;y%TYsZ#z-$n3--G!DCIR9PX={6VNsQ}b7r8A40?&;UO`z`qCi zdisZsj{HeUg^InYY!!Yxpx0vla_UT@8kBzoq~nQkPu7xBDtbcTz-bHDzy1QJ%gzT* zTH)eNBL3=@&p2~}S_0sOiNp=(q0=Y`lUJ)i`Nk09wVT^)Si zrD%d@9fn|f->VG{KS$%YLlAl-9$4;}ij39~TgFCH*jSp?=9=e`XmQr0Eo=2P3NJnU zPZn+8OtVXJc}iWAzNn=sCFxbWm}h_H@?ld}4JxXimIbz6tjUQ=X{ZEpm>FnTyhzYg zv9fg#`U5dRvcew~!=6{-x1D<}hAGI*8UTf-7qjX0i7b}+Sux-kdwuhPZ~_Q3K&L?| z)Ea zx;}*LX;h}jTI(=cUwU$L$!+yg!KN>}D?pxvCl1xO+E=GnpUsYvc2OO^W^eO26@dlD z)*qU6VKOX2s7akKd9)Z-W)*%SX?>C?5+Eu5&T5WH{aQ9(-rNVe`?+hPfj#o{5twXp zm+pCPw64_~WAjXrxxptrOOt<7!l5G9jEQ*UcB>O>v#_MbS+y{SL}ThVj|bQXAK}@U ztIUvM^w9ey*HaAH+?{hvKM%}m$ai3DvIVH5s4-GyRn=@V8Ud?2*#|Q@y?-E8m(3Xt z?wY6?dOV*(&B}ans>Z~je)&aJZr^GqRl$o4!p}->eS{wdV*P~ssLOw#%u9Ug{@y>; z;eV$txt(PHS2~Et%cjQ*4gOWoG{9wOz^r7D$Ck&&BC+;5l8nZHnOCiw=+R7A=FMNr zp`IQ-g@He;_H#uXh2ieVhGPfJ(_<)ZFDJ3N|ByQtMuJVOHM%T1oDbe z7g?lzl5Rd|$%o?tB}aeG$8)2H2F1SmwaQn*wS(&uVzJi@c<{$Cr)}0iq3f5(D>3Ni z4=lQ$KcluLr>1dJCc4J1EtiCr%8h5MA(gSUT>{{0Y8Neo=V-iH zgxzIGwZZVS2_pa;da~w%x|H^B*#PSXLK~fiP6H$vTOP~aZ5)o^-I9(0cmiBV%!On4 z%2@DFz@}5<_}zc+yuF_&J;VK9(K|VGHhxgRdy8WRrCZ*3EQ&8nFGqSzczGc7Dlu>S zq#X&fefSO=)1ku$T-lbNTXDw3lZ(trp{b%Gb8<|S*5emN+JX!XfZsgyP|oP)oL=TT z`3JYN6gmT(ZH@gClB@B?_zu0O$}TH5DbqRcG!uS)QOSSSUr)YV?y$n{9+|Av>j%gl+<`aaHD2N&3hlAjkPiPP1U<||Dd zQG)7qjjJ^$Bj2p71S4=$*hQOU&GKsJQx%6CsQl%sRj54iVjcQawxd5CfbJ`OWV-KG7$*vxDm1(x2F|pDTLExA ze}f#)1%~*4>2nXDPo<{0GL2t-(97>Mf8boF_4kakdreL4i{|UI!P%YHcoz*n0Q7)| zkt3UKC#mz9KV*i504!XVG1dLjLQZ{MfQr5`*ng6DnE)hRz+7$EVNuGnP>tV!g- z>*tXLdWAYabYe}w>uZ#nzek#~hPaA;dEa(l(6dGIXnk_FR~;T09`hAWC0Jcn$KN&a z+U9>G*K&2?oJ*>a)kRwWUcLl-0b0warBnT7=rY*MI(i$KRFV=%S$O%TPMVey8>-yn zPC-jv$W3Q^HmV%SAot;`bqd)ybN0>7qsLV?0AcMFydd=&N&^~}xH?N#w z=B%f$sA+P`7|yv0Z0b{&f2zXa6^g$+t98{4R4DVx!-zKg#6BIEUMOr4_RbW-xZ{6W zf9dD`u-;~EYPF;h&{>dgn6gmz&#-#Pn|HAgoAp^c=?yM4Tz;h30T+-6sxD*gO`4f?EF+?ntZaO4F$eG`*GcsA@V}o+Xd* z;9V&+?`^DPY@FKFc#RN?A*|rD{?dObtui#P&$g3ho7{PmL1V8~kKMOsxBRtC0Ul^a+z{AAR(b2?&oW0NBLTvGCWgxy42QYt~t_~o) z?i7!{swaRm`UC|4*dEXtN?k9~D6&W|?mnsVXj!N73@XIji?76>>aGiyCa$*TIrkP^ zxt*VPus5-1KZT*QpX}5%vXQsP^4YOfaBU~Zd1ss>-s1HJ+FlGJ1bz9~F&mrni%q=QK|Sk`9Y2*FL}DYPlnU^-A^-?s(*? zxs$1sNL)CKc5>s!#AGd)-HX{0eK;fJZI)(gGXFK9uF}PetzZQ6a?oG#J2~HX!DQsI zB=QLfQj`xV|FMt5i{oza#gc4g8d&_zer2RU=j6L-sU7PXnSQf%xm$lwV|A~b{eyyt zXL$!-MxlsDxq9&`s`jMa= zh6ZrmJM{exUajJy;6IQ|>l49p6+`TOVOzupO9QzzA%nY=H% zxy6T#cCTiAbacsH<7wK~_!XhiuP{Wb{FBJ7+<3t`TyaDz_WXZ`F9C4P>Fi5<4;}ZE z>q>lK_nQ`rTi;o`&u=3rQ>^e#A?{zr+A}Y+S_j|i)ToQ_)_86KTW}1t&8hD&3_`CB;~q zH9eJCeo8fUNCAI4xvNwD2U6K4%@Cjh>oIigfLA|Vzuv29Uaw`V7rIG7Y8H1v#vI!ka&B?$WDG zH`B{0!JCwg7mO;JK2?9QuYCJretUXX^CuO%H-F1Q<<%`VlGX028H>y-mAgKFAXD3K z$rrAh!5YryA0t^z(_o|L_%xc{TC_sl+aKPJu_`skm6-xL0JFQIGmILigTD34idiTy z7D>=e^W=XOzT?30Wr;;CxCOhp}i!T4m-;a0ZL!y~lOv z&Mj>-ehpvcc2qX>vM!UYND?4qo#8nfac=1vm7{h))tnrk7}6(|CTicZmY-k3iC-u= zI0~^&aAh7mWJPOr9f=!ywc(gJu1vM?8*laH0`7mf=VsW{ivwL1efzB;p^f;^)ANXi z#nc=l33WgPb2NJUvBz?^1F%;%V7>wF@E8ExMUJ?naaTHF42%z717pDVtGU`|euHZy zBJnxRbDBD}mN_FWmr!sUDenEQKhW*p|8AE;sEEdJ2WDEbcs-&sU$%J6=diIks7 zibQ|?{Sa$&0Cuhh$1wV#h^I7WXa1>sX0~u&UGNXltMHpJb9*+4;N14wRy*Eym8GTg z@1}GNZ#Rt@PMj)!m_(g}`4rEKKyG|p# zyI<-%-8{D`(v@E&cIQQ(Hv1v@@v+feosWNYe(!9Gb?T+Qryd%PiC?Iz^}S*V$8dZc z-te=8GPMq$FAs7ZP!RkQ5OuwyPti|q1TOM@MASt@TpMoiUEoKa#A5!KqPme=uiy2D zFin&cE8Z&0)kH&-pS2;wHS*#g~?dDGksy_6p|5G+t;! zv{dVxCWi63B?t3*GttmH2pl#oI+a?vYU{t{t7t>!V)3XETMb)7|AZ$s9<)ztN>$Li zQqYqZ93Dm9C82gB8G5%`6rUOTyEE3MwA+`pP0MfS%;i`ZlqwB~R7u2Wk{EyEyPl%) zf=f;CCp{}=CZQpKK+_5&<|V&IX{_iNRbs6JrqANzm7#!T%SHa zvLc(lJ3B=9M&LUE!y=d_n1+AOq~zC&M^wQOUV!IFFKs#%m>*hU^PRhm)h+mDwO4@t znWImYMA@2WlY759(%4;R@>=tXx1={4?A+VZ)2ZUet1}83tEUW8Q}mAt78uhHP8w?M zQt*0~+b1EIRcG(|(&*`|0r@be!C^9Sti2O%o1fGM)`I_m9qcJ=IhcPkw<)@HRSYPV zjEqAjed!j`C7ap-H3?5J*L+h0qy6X((@F3iiW|)}fx@3_{WB2aTD{FS{s!CmBu4&u z`a!^mdw-*yg&WM)Qm3^iq<9)Sn!caYwpXN*SY1fUNp_ZO99hO*U1CQkCUO_VGw~%` z3lw3Re_!64+4W}hzf*sdp{tQXnEbzS8(cI3oX0?Dj<~0%^H7n52E*4%d%cz)vn^N0 zu4MNE?DyR6H$kltW-M3?KIJ*GN^#C(cU>c)R(npJV_l1EXy^xL%A zP$@Puqb2s~Uzr-FdaQEs9gcl+GOCt*&|spp^Z?PV)ISi7Ko0h_*SH(y`<-d`t39f| z9StyL>{cc=(|5^e+8XJO4eVjr2X3UZ_ZaY%A=#tuLD7R9s126O7PHMyY6h>HD+knV zZS|Hm8)QmnVCaA6ZW+^vWY!tspG!WuyO0t>w~LbQomY4msPs<5w%Z*32a+e4%@p+2 z+JLhX@m`lCWmOK;41oIjTd+6*rgR<;ivO`+U!nKw6g~LJp5@KimJvAR46fgS>oA0; zi3vQ}vK)}58h;>%-Y3l~?)@=IV%#}2xDSl3th~xb233DlV{)X)Jg+bDH(9UoZG~u{ z&Qi+yy3$`w9%spBSnIiR5})fCp1KujP zt$-cS_?x?*e^f9+IW%dj&DQy3nlZWKbzmlYdcQw~*js-vG(86X>;q!MeE7&~Ok$~k zR^z!=_q=~Oxn@ywhVdE?UI7uC)P`$hj87L&7c8elv9G~bLt-OL4(hT~}G_STde{V@ts(O5_Inu-3 zhOgnp7bZGgAt4umtr5P})ALjN3}?9ui-sreh;3zoB57)7v4wLcZUuXUDLVivL+L6Grd?_EUEpN7J&X3k1@ChnDPB$py)4XdpLC*u zRuv=ieo!IHMe6&3vg{&yzPTI*pWcIO2!4NJAB12ItvLDas@i)jmrK3WJ9s2hKkx^6 zW_j3-C9SNx4u*L|mV5E%>J5sHgk~{Sy&RCtm7He%PB*OFB{+Ls8ZIJ6neU5v<@0>` zLG`$ObPT%ro2)gf(`z1fGcW0O$?t)?O69BcTL#igT1!nDU!MnfJ`k<@ASa^}@Oyt1 zKvj?&#UF^lvcReAiyPUc9clC)qWFA&D6d?Sg8)!0CYcUd&j)W8yvvz>#1or+ zsJ11=T%??n?qL-A6c86~{}$i|Li5;wiv`G?oH7#}aDn+$Qc_ZyD};UO8_W4Un@y-A zKUQeiFTVcVlf{lW0x+^J0@a*^LLv6jBs>vpCazbS=+ zkvW@~fuy;VQFY`W$R)t9zcU>$eup?bkTPjY+`?cBkH6-?odTrQh31O5PuJ39Ei)1H zDsNt=eli))IBNgI7k`VS>s?37*+M})={if{QE8A?bv!=D;Mw>%r=91cxpIFaS=uF8 zJKsTvPgLt7H=bKVT@j_Y4UFG`o5Ctt5$7&0^#k}(GTtX;v= zqJ#PO%Xg>rqWDjhyZiOub!rod(hL*7@h>e&TG$!dtu1TQoywG?d-v{9ahr6~hbz)v zpg?N}1ey)Al$0dswr@Cf832C~WZ7%cLKps(ZD4Exjs_QO&&R5{r&w!n=qML#iulDd z4*QIW1d?Bur{Y5+5TC6cK1jN2Eg!{OG?l-hCZHYwqEa9fd;J3*iF9hiWJ<&MVEjJm z=u9ZTX<{`@n50@hw+iVFaF-$cepk{x^>NgbD<%_fJd-M+*QIHvX?%YqR#n#K>lo2h zE?6w($FY-`AhVv3pvQFdLRL$~e8<$nZnki~tdr-t_>o>e@wLGC1F5@Mv9I;RD*;I# zH}O0V@Q;?VS=e_Se* zuej*mA7O)G^s<$R^0$9j+4&^jQpexAupzLeTnMP0lRh596EFHAG)yGO?gRY`Yu^Qd z{`Czoh=eE-;zfWVkdoTeDV}k>qu{0q0FJK+mDF32ZdDYqWpea5q=+COKtZ0Jnc8;Ot*a{JjXsPMV_| z4m_8Q0&xf=&)VaySv6`ab@KSUHRj+y z$bP*^jdNs@U6Fq^y3Fp!`qH?xx^g$r^v#qs-v305*K#NOzR)eh>F?C-hf2a_c#rg4 zVe8T#3~eseZHOqm*oUwU&%AdM$;q%@w~Iy;5nHWz+^aZ3nTUyH>5rxBjiqEK_u*ceuy($b33xm0g%#M*v?Al^C1^}ud#Rr1lOOqn zc~kJ}Cy#Yv9Aa8YApzdx49)>8G%^Md#O8R_+oo*Qt*$ z9{V<9>rsEX&RI&G`#-2(Y6m|VD6mFW@~QaDy~(fJnbr_5z}DpNARS0gX4kGv*kCKl zD$1XaNV(n#?f%#rQ`mKN&fS(c;J1O+Ts3bXi5YEA5j@_1fF`t|XQbd5R8+t7Cl{T!L0tPxv=03}`cgI(r;R22Q;1;yuxR?H6fR zdNIr6m-wwI5L3O}W3l4wgMP(;p$55?a>arDzoIjqM~;j^i@1sC_;59E%BNzLKe490 z6IOrT|F8N2lp;F{PU>IySA}7|Qy$f^+D1#bjJr-JLF3$pQ>}QtZUtraGmRs@tkTwL z#jjqi8|=u1RUz-RN*#_vCUHKK)`r^1ev`zs^DIi=ZH|sCBvhImCEyoTe12rUvB&yJ zW;Pge@HZAFl{G2be_fdOul)mQd}y@O&@g`_MM|UI8LN+iYLq=W?Ycn2>U(3!olvLB z#_b<(mcF5iF0FvSZn(f2lV@XnKX<)Q8KG2V#Q%^X>Y>CaE6?ri8877SiTl+vGJ|8E z+y9EmfBI~wC>k(U%m8T`W~{;sjA^S-@P5I}NRJ6UoT4?S=taiZIJG-+F>iqgqWypJ z31s_!uXLW|n?dw#7k&kPeZhFzBAI9;z)mB3;oM^*CfSS?aGccDF?qklPwn)X;BLWs z$`!4`3lCb9`0GleZKZ_yrfCdhf4qG;XE>Uw6&m~d#r0v-3cseY>qGU=NkLsPmm54Y zP#XuogMYE!pYtxOugtzDSDx(Y``Ul{=v~*o*6X%gA*q>?e!^zSO6$+9o;i*e)msCdp9g8dOC@ zQ|f$R>zK>C_3KfdZrl$Ua2E^+4>D@jT=04-wl+S1U;;xmk|_<(+>q!+-=BZa<`lGU z>W{bKcgu`TpnsnAa48hvD(eqQF~^e|UM&~OeM>bY`{ z?fHj(y!T4#fbf__e!ZNXzvB9XQSRaWdpY)ytSf9;;bk7%ZJvLq5vB{{ms0e4NNR%DyC;Hh)U^)AGY&MuN8mOtj#Kia`IaKrT*Hs?5YgzbQSGj+w{;{Y299Q~!SS7Wj zs;5Oha(=4Z{sYM&UN`Z^=SE!Ei!(Dx zm>HA#Q)vFeh18Bwn}lyao=&#!*5AGVBQb*z$55f-kcvQtj0l0=@n?9(!ET9z5AWNn zMt~kj0h$Z=4@e1+O(nhq^b$#2jJ|ERy$TB*)ay!@jhuge`>$&R#{Qquk7qn>e^k#W zgy_7i8GuJZ@8VxfAsK4<;xV%~M6zDANX@H2<*;P{soIEn@iU2FTjdREQPH+LaSLpo zPZ+xIIj)T^<>QBguiD>nI90=tex&$7GlOy%MRNUs(ix@o{fcpxhTn;+8LBo!ycu7V ze$bJ?{ycwZR6N?Sjy3n=r!RnJZ^3Wzcb;~CYOzF=*D%l-m8u z;@g2HtW31`uI%kv zrin@hwkUom+Gp9nLTya1AA~V9sNOkIbDU&YgE6Kx-tyem7PN3?(}ta>e%Zh#?!LJ8xB3ZjjJO;zR%Bu7=rS+&pzbru{f?^ zzFmLTDT~j(k2kH{;85zSL_UqVcoN_alVp5j%a&;OXzA;bp;@5PMfgYY6(?uF3Vf^A zO>38`mFGXP%l&%KiEs%R{034QR4UX#uag^KnvAeV=k)3;{SrwCBmRby#rQ(ixg>s| z4*U%UaLMPW+yTST{p}H}bMqnJ8!Z2H6r?9*8!kr}bdrhlKOmJ8B zSYFMlvVc6v;fp)tPb&<*}x%lJ;pf*CvI*H4lG5 z?Q_F=6HP!`;b6?x$t>(>fpGo1S^4o$2bvtS)er)$pH?%Li=|5~W`Nld9wnO^Wo zFe*!!^QrIG!f#K_rYkL7F5dr<@cjK8P0Gtt8I76MfF~`T4N7kx_&L7^F2LHJBl{aI zj%S3BQ3`eiGTMh1L0b;;OO4e?e&>IhQeiws<;j2%+t|=g_N(xuzPRn*GuzDDmolkjPHC%W%PWh}9{fB?Nw`fW! zA6QQ#ySHrcC&5)(g>wlmfopXY&&_n@Pi>za06ILcgq?9xC8)sAU>eWXBou04 zSY~VY{&QXL$`~Uz&20sJm$r{?*M?;pC*XVXBd}&1)8@Qv-K5cVTsIV(L?+swgPos0 zpWi&p!~EcDe6;@f&+9uYodti_o_F>FqMqOiA~`*C#9fzHy1)X7dPADa_jV_fNyjs3D<`iV`_r_Zu3Rj|cx^JCj z95YQPmP9MTiGTkR9NNrJ1M8H|lJSx6RoeI|+2qj>i9g}Ov92INwFk>SeEPWT_l zd!wSDwm6l(Pk%WWoMw6*dBx+g34)1K%>+nAyW#5qR?M6_?ez*HHGUUXGQQqkz-hu= zWMG_CJo#9@VLm+n&3KbQz6G`G)2q+^Kzb@{JjAD`TE34`W4?dniwQO(u#LCeDy(+0 zP9jf`i?CZuC11ufFi(FgSu?kn3_x{RcF`-}m@7SKN%31q8n?r?QkyDAKQmk_AQV)Isp?T1eGg5F+wvd>Dd7Nod z>To{vm)>lLoST2JqT=07{P2@%%WQ>+>#eIEX+P+PNDZWTA5|Rd9I3OqtxX%~fVP;y z02QAv^tJG$)CJR#ALofGyFAr0o}G_Zh&p-!?`S>Ld8Tl`?o%)RXdB0mnYVGjk_*^c z*Uz{A*54y6lro|iz}F90=$B)&-+v&d8ACC}5s!?)U9o>O7bMgP6`AaEw@DZZpe@Hg zkeF|&`{r{{=oQkKH4Ql2-pXR-E=t$G>s>9?YFhU2c=}l;8c)eu8R)V^*J&0|m1b9# z%W985k>tWJ1XPHg&04R%v|7D%%Q|0rgSxWqZP$3hH$Uz-*0Fye0Wp&}` z@edapdNa3aMM;*VB=X)96v_pQDxFoR&<~t5yf!gatGRx)Ya`%xwp^N~zfI(`sKAUb z$RPs(6mo_B%5xXLYq7h9Tlhyy0d2obQB4)sn0$Yy8k}N+TE3r^^uO;YFSRjSD9HUM zVVuW{uK1Or2*EqDS9o;y*evvYP8P`z6E&5qCI7D*bqiz&Ljuur0-~q4h~xj5+$+Cv zvj>WO(2E-=D7yMk{<*a!X_6EN$wlo2w6nIQml5yQi01`Y&0F7Xrx4Sn2O&RN4n_?- znm&IAvuXi;9NjF53Q>OgjYg4g(AR=HFPHs?q@q_a=VZY}WDCg)(|G?fm@tM>cgeTO zqLmilLLhQlNm41NlP`jXTOQD^y1&p7efHYt>)DEO;k39svmo|T-BS$ymZqo~2Y%Ma zXPqx{H()$5_#vvcse|0s^SPLC9$&tg+VG+dFk^ zY4%lzLeKGO7jD#tiYcFolkSw_&qC? zrJua3=x5TU##^BjQ)UT)UDNj3w>DhU0l}9b`_$(dU{`#EdRF2$*hcLfKDk6)62yO5 zTf1C}$uxGIDkP=-Hcjqs7c(oVs5yF(%{sQZLVdoWaJrle8&lO--PD8|NhtYprP(2d ztO}ji49Ix2bKs4sMyT68cPoQI`6rddOL!vXu6NM#pt;pT&avHU8|6ZZi>{MvqRj^W zI|$=T6Qk}Jyo0~4a?!Ma2kxA5SJ8iA%jbVoO{PLpiUL6(LGdWJ@1WfHL6IKCG1J#9 z&ZV*o((IzLtUlb}4Kpb7^?aYNz%>C0(A@w~PU9a)uQc}V<=xG+fUa9+&prwYXw;Wm z_-hut@4E9ai*~wsW9aYK7`K-F8taZj#KI?;0Qk~u}r?aBzfIpCRjpKtCM@^u4 zj=T~H(*zhcbm!`^`Sl9c;I@C&Nfn;bBfYXd3IxASCJ%yr*@$43xnCGG|1b_fsAHXs zsjkniHih-#7e|rhg)#?yos;$Y@0L2RGw>I_xdj&q(tlAAUFU44_3+86vy-z^Y~{{b zo)&h_Ta>rehRf0915Z`R*PTmCp$Tc*_H?4l_a{GSp$F>?14Ztg2;F}<8Wq@WH_^#$ zFp_3BkhKP*{e0;`?|$NXol;0JvpX@5V3Fl!ncwEyE~sYM;|ji3xLm_6_Y!}&8MGw# zKGe(7#OxWvAvrieL5m;kta*odo;H2h z^=VW0k0>j1M^d>^c{P9EJqa_n`U5FgD07}4N*4%YEJZ;tsF~PHP$p+OX6OJ~5GXtF zKsiQT#2P%u$VG0<7fOOwR9n7C>tA3f?OqAg>9C)bqQ(iir~FE$ftuWx%}kWd?F2tv zY^^P4%9ysh^Dxm1I?Z=rTvm}Zl~vnXQ5D(VtWz&Lx>ddGy{mud^_ui~`_Qf>?NM|C zY}!1Y^^>EYbS_SO=x)ND+Pl4=8!HVO<~?%H*yZoS+|^tgbEzY*=j`7cp2v3h7OaM` zi5}M0N0OV{dLhJL2R7s6l=bmzEw37Wk%_J}ey4J)W-;_bY4wGwCHp@$(`mRllD<@V zbjp=2uj%0(v=M&~*I25iia8PPvaj~~I#D-2^7A)kL^Fa(vGy2&G4E>jI-oTks82Pd zF$A}MeZ>dohUp_jFD4O5gSjeGwTp)wl0Mov-97v2PEvzL^UGsp zg|j}z+gC1IhqWfad*BRHCS|5`-ac6<0cizC*xg3+bdlL5H6L-}wg;mL#Xe4**d!!rG zbODBXx{8_@uUff2ZRqEh_;M1%@h---!iB!n3?_dU6#jtTu#gB`N;wx7>gm3#U zZSECa<&M4b{L$yQTHAa(FR2y_=AFyQ9xNJ<06+MyP!D@6kQc*(GYS!@OWGp6tYe12 zOD?j>VT%w)7=(@1_P*8)7&ALz)Ems>u+ykVQoiuPJXrF zTd;rpZO%%4mt<|EnVCgNSxc?atc87TdsS7LMNWL4nJpPUuXT<3zstqBiFM_^aOM5} zHF0s|$nOQ4;B01N`!nmhSr&YbUyga5w!TO5?=ZI0-;&H}3%Xn*w(Q1f13Fa)htlcR zycw0Py81GmbKQvV=KR*G20kamyI^L{Ygdsb! zlKs)ruZZBXj02@NN8>(Of*XmaLN2MIS-H0iT=Au0Kfm6cI=}wun2FJ+b85XC+M?_? zRRt&_u~58s%%*3I$$`>EqxUyrXbgZ_R$%by_k*skos-?7@9)*YiBvZr6j+CWmmz-x zFC}*B?0YKzKp1{Wtet&1rn!v2H}uuhcgjWx%ZWy<#qdcw_##7;uY3=^`{S#<(N?u? zel4m99h`Ju-tpMpKi{~zX>mrna6=O=-bbHqX0?(9U3kQD@M0ZLc~4oN-A_b1_6>CI z3%MxGSWbH5!K~`Bx%8>{wF>@swatHqUD#HIHOZuhd-09ROX|$SSRo7Y*(;d03zZ>{ zvQ>^0Hogn5!?f?+9sL7=w(uNgF@nN{wR1W&5lfG`NXxIbOsn_!D!tRwbvYyT)C(GN zv>z^1`1t@xcAfS514)KfT5=z~v7WJWKRn8(qPOT5Z@pZfT=7OA@l5MsB4U5rn7!o; zT9~=Ji(HYTeI2c|4`7w!Mcx&IMIo!H zQx%vyR-(F{)q66~PyLRwRK-InwvLjT$_VSgw-@%rEA8EW+#PyU!`pr75!QeGGoLWG%ag?Mp}ZT~CzSpvc}uPIky0p%ZzB!{W&92W zy2z-P3QeZx*Im}YDCz=i%(r1O^tAHi*TCUIceq?_@O?MZk_z9Y+f%PziMAHNL^3v? z-O3?3ojZcYEw?hy>FS=HFLg3caPlqnTo;gJoo3?5=KXHg9bLT8ckO?doNZ!8z0CwX z?8=Iq_*aH2lK!T{pXR01;bu4XKN$_LjUk4zidrAd@ryE!>{MG<)3MG9fTBK!I%Gk1 zaaFBIzw>fX-c^r4zUIz4#&`?dLmJ60k?o_q?+UsNZ2v%Vj@fgVG{3yNn`xcljvr4W zzq&Fz@;nK~>CKB<)V+V8DFe^YymMqt%B*+Ggkr;jR&gX0va1M$3xpSsH;k2+CzWU*J4?;@`Ga))4SJ4Rt*z^9r;@FvU2H;+S;5 zDpSF=RRb=dg}MI+!v4wre)o|2?`y+3+6!CGY{+u8qfO2^FOy+Bl&Sn)YLVm4_Ne7g zx5bwi?p3aEKDB?S9P{^mLDzs&{Q<4CSX23q4omBXcj@lcoH1Sgt}M}2_X8TgRkC~4 zYB)2?y9Tvy8rDU-k}S-qrz{VRtz{BU#Yv8t&kM2eJ{rfewZyhh4(0-}ipUgl6OY zg3WmDTa&dw^Krus&okqfHmCkTxNqTWZFsIhQ$Jpc{29hFSm`YNpec4)>x&=Pg6&vL zcU4UrRR2|V>>72I8+z3xEa>;y@Xs-QSMSJ2ZR@|g8Nm9p2XL}+rs)YHxGPbKgaK@! z=5Bu_7FmB;St|KDlA~dPj6|(sWwU7e>*Zs?KalwEEJtSDy;U_;F&qngPNXN2C|8TCVf`1-9r#B5qZV)lYKOVepLzoG$m-WECqbt59`J zrSe$ki#LBDO=TRlr$xrgvqR}TsOw>;W-aNDV%Sj zj@Yk0TTzO6^WH6l_6S=NoB48nZAoyC%!>k;oNs`~z zPrfk@=h#b!oG_~+B;Cu5qziNz6s5F}75ab9tnF7qwSv}wpryv_O1o!Bd@E{fgepYx zV=Ay#vckVP7`zR0_H20zYkyqQ)rZ4)9jehGcsxA?RKQup`5==7e#<#va=|eT8Db!+ zr>|a?lr}E^hDvDpXG>!vrL}i)l9ZwA?K0C_tKD>EPmoOu=fquGLyv!f)13mOU%qBqCmg1c z8~~z6?}xqoF~dsW)$dr9As_*!!mfWTOSIM!VghLLr{IcRZ!BGZ6w2Y0;j2bKG$ zQ{s6#-utNoJo&Lu_5?ZRtFhXSMbL~d7UBh)DRAVxp4JPY?^q|#XNZ8q#*)O%1^X)p zUTw&vbW~$yRV5et%H)g2Y1P(w{w}8${$wIm3sG4!FQ>@v zEsWzTin5pgO}barhc{k9{DEY@v|p?G13BM&`}bDozUvAvY7gH^)Ay1b`^1%}WEo>nWfarnK@s3DZRmy;JcQ zcoSCO+PQ;&gB0+#()kMh1MMUY?Zm{yq#Y_w@o5WKZHsZ9N1pOBQ(mU36{z*Db?D@EQfKUY{p(nwOgaVIzM8|L6$HIPOQR z$MEGtVC=$1K3>^-eRd`8^&>MSO(n$uTSF;*x06z2c3Z7bmgKe@-K|;1Tw~nP$^EeE zTDDtt2Nrhk)y;EnEGK-9`i9$xs#IhW`YZ&Pa?Y_Tr6P)*BTkZUcNIm|UR(NFn6RMD{SJ{mcv4no)o#ucW_5K< zDL9~Y?%d6`ma)Td*%-UqqE*iS9bgN}N`o9$u7V7^soz*Vjl+MtLjY$|ePe`$tPY~U zIE8?q_=*b~!2W?;zaKVw@n;wB`OvJw0yCkl2|a5Ba$(b~+O4%+DIWP|7eOyxR#6LA zM$Kw^+rL_(VfNLK6Uw{FB)xs`1Ebx+npqoNcws#@_C=|POorskl0T5QB`tGRQn>Gz zCHiIy<caMC$xc}ztdfeFb<=p$)W~R?Po9lHsj9GvAGO*px+-VcyhkD*bS5X;} z<&zWUFwRrvUz4@*dASU@Ym|E82HPm7+r9}aTmSp*2XJH;Zv0#-q_vwF!4H)usBFoN&Vj@o&UX{%wHq_n+v8R zG1~rEy>@+CuP}n*$nyV2MftVnPG@EaR}qs@*_o2XaR^X{3$K6wtrb+*zg6JZ`15

'; @@ -2228,9 +2228,9 @@ if (! GETPOST('hide_websitemenu')) print '   '; - print ''; + print ''; - print ''; + print ''; print ''."\n"; print '
'; @@ -2284,7 +2284,7 @@ if (! GETPOST('hide_websitemenu')) if ($websitepage->grabbed_from) { - //print ''; + //print ''; print ''.img_picto($langs->trans("OnlyEditionOfSourceForGrabbedContent"), 'switch_off', '', false, 0, 0, '', 'nomarginleft').''; } else @@ -2325,17 +2325,17 @@ if (! GETPOST('hide_websitemenu')) if ($object->fk_default_home > 0 && $pageid == $object->fk_default_home) { //$disabled=' disabled="disabled"'; - //print ''; - print ''; + //print ''; + print ''; } else { //$disabled=''; - //print 'ref.'" class="button nobordertransp"'.$disabled.' title="'.dol_escape_htmltag($langs->trans("SetAsHomePage")).'">'; - print ''; + //print 'ref.'" class="button bordertransp"'.$disabled.' title="'.dol_escape_htmltag($langs->trans("SetAsHomePage")).'">'; + print ''; } - print ''; - print ''; + print ''; + print ''; } } From 59625dceb5f205a281d303d86ad97c47624f0dd4 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 19:03:30 +0200 Subject: [PATCH 177/228] Fix phpcs --- htdocs/core/lib/website.lib.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index f4a42074789..28633c5fad9 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -113,7 +113,7 @@ function dolKeepOnlyPhpCode($str) * @return boolean True if OK * @see dolWebsiteOutput() for function used to replace content in a web server context */ -function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype='html', $containerid='') +function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $contenttype = 'html', $containerid = '') { $nbrep = 0; @@ -201,7 +201,7 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c * @return void * @see dolWebsiteReplacementOfLinks() for function used to replace content in the backoffice context. */ -function dolWebsiteOutput($content, $contenttype='html', $containerid='') +function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') { global $db, $langs, $conf, $user; global $dolibarr_main_url_root, $dolibarr_main_data_root; From c131af5ae1b830dea1758b780c02bb5c62e007a1 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 19:16:52 +0200 Subject: [PATCH 178/228] FIX #11672 --- htdocs/core/tpl/objectline_edit.tpl.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/core/tpl/objectline_edit.tpl.php b/htdocs/core/tpl/objectline_edit.tpl.php index ddb737bbdd6..bac9ff997bc 100644 --- a/htdocs/core/tpl/objectline_edit.tpl.php +++ b/htdocs/core/tpl/objectline_edit.tpl.php @@ -116,7 +116,6 @@ $coldisplay=0; $toolbarname='dolibarr_details'; if (! empty($conf->global->FCKEDITOR_ENABLE_DETAILS_FULL)) $toolbarname='dolibarr_notes'; $doleditor=new DolEditor('product_desc', $line->description, '', (empty($conf->global->MAIN_DOLEDITOR_HEIGHT)?164:$conf->global->MAIN_DOLEDITOR_HEIGHT), $toolbarname, '', false, true, $enable, $nbrows, '98%'); - $doleditor=new DolEditor('product_desc', $line->description, '', (empty($conf->global->MAIN_DOLEDITOR_HEIGHT)?164:$conf->global->MAIN_DOLEDITOR_HEIGHT), $toolbarname, '', false, true, $enable, $nbrows, '98%'); $doleditor->Create(); } else { print ''; From b36df2303be281b4da982c37686f9ceb6e19b384 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 19:26:46 +0200 Subject: [PATCH 179/228] Update movement_list.php --- htdocs/product/stock/movement_list.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/product/stock/movement_list.php b/htdocs/product/stock/movement_list.php index a64a8baa70e..f62b732cf7e 100644 --- a/htdocs/product/stock/movement_list.php +++ b/htdocs/product/stock/movement_list.php @@ -943,7 +943,7 @@ if ($resql) print_liste_field_titre($arrayfields['m.price']['label'], $_SERVER["PHP_SELF"], "m.price", "", $param, '', $sortfield, $sortorder, 'right '); } if (! empty($arrayfields['m.fk_projet']['checked'])) { - print_liste_field_titre($arrayfields['m.fk_projet']['label'],$_SERVER["PHP_SELF"], "m.fk_projet","",$param,'align="right"',$sortfield,$sortorder); + print_liste_field_titre($arrayfields['m.fk_projet']['label'], $_SERVER["PHP_SELF"], "m.fk_projet", "", $param, 'align="right"', $sortfield, $sortorder); } // Extra fields From 4a083bb0389bb0c922370021f291cfe36130a7ce Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 19:35:05 +0200 Subject: [PATCH 180/228] Update chargesociales.class.php --- htdocs/compta/sociales/class/chargesociales.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/compta/sociales/class/chargesociales.class.php b/htdocs/compta/sociales/class/chargesociales.class.php index 05169adcf7b..4fd157de9e6 100644 --- a/htdocs/compta/sociales/class/chargesociales.class.php +++ b/htdocs/compta/sociales/class/chargesociales.class.php @@ -317,7 +317,7 @@ class ChargeSociales extends CommonObject $sql.= ", date_ech='".$this->db->idate($this->date_ech)."'"; $sql.= ", periode='".$this->db->idate($this->periode)."'"; $sql.= ", amount='".price2num($this->amount, 'MT')."'"; - $sql.= ", fk_projet='".($this->fk_project > 0 ? $this->db->escape($this->fk_project) : null)."'"; + $sql.= ", fk_projet=".($this->fk_project > 0 ? $this->fk_project : null); $sql.= ", fk_user_modif=".$user->id; $sql.= " WHERE rowid=".$this->id; From ac8bf7b06658a5ac71381611d5e36caf5f6e93cd Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 19:48:29 +0200 Subject: [PATCH 181/228] Update propal.class.php --- htdocs/comm/propal/class/propal.class.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 1bf1e5a6a69..a2d1e934d35 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -1056,6 +1056,14 @@ class Propal extends CommonObject } } + // Add linked object (deprecated, use ->linkedObjectsIds instead) + if (! $error && $this->origin && $this->origin_id) + { + dol_syslog('Deprecated use of linked object, use ->linkedObjectsIds instead', LOG_WARNING); + $ret = $this->add_object_linked(); + if (! $ret) dol_print_error($this->db); + } + /* * Insertion du detail des produits dans la base * Insert products detail in database From f26a13ff137d2489896e0b68fcd4de5d2aff1a1c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 19:50:18 +0200 Subject: [PATCH 182/228] NEW Removed deprecated code that create linked object from ->origin --- htdocs/comm/propal/class/propal.class.php | 8 -------- htdocs/fourn/class/fournisseur.facture.class.php | 11 ----------- .../class/supplier_proposal.class.php | 7 ------- 3 files changed, 26 deletions(-) diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 598d34f7093..4767db0e5ad 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -1056,14 +1056,6 @@ class Propal extends CommonObject } } - // Add linked object (deprecated, use ->linkedObjectsIds instead) - if (! $error && $this->origin && $this->origin_id) - { - dol_syslog('Deprecated use of linked object, use ->linkedObjectsIds instead', LOG_WARNING); - $ret = $this->add_object_linked(); - if (! $ret) dol_print_error($this->db); - } - /* * Insertion du detail des produits dans la base * Insert products detail in database diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index 41ac2f126a7..755ea10303c 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -412,17 +412,6 @@ class FactureFournisseur extends CommonInvoice } } - // Add linked object (deprecated, use ->linkedObjectsIds instead) - if (! $error && $this->id && ! empty($this->origin) && ! empty($this->origin_id)) - { - $ret = $this->add_object_linked(); - if (! $ret) - { - dol_print_error($this->db); - $error++; - } - } - if (count($this->lines) && is_object($this->lines[0])) // If this->lines is array of InvoiceLines (preferred mode) { dol_syslog("There is ".count($this->lines)." lines that are invoice lines objects"); diff --git a/htdocs/supplier_proposal/class/supplier_proposal.class.php b/htdocs/supplier_proposal/class/supplier_proposal.class.php index 546a93763a6..a6b240a4532 100644 --- a/htdocs/supplier_proposal/class/supplier_proposal.class.php +++ b/htdocs/supplier_proposal/class/supplier_proposal.class.php @@ -986,13 +986,6 @@ class SupplierProposal extends CommonObject } } - // Add linked object (deprecated, use ->linkedObjectsIds instead) - if (! $error && $this->origin && $this->origin_id) - { - $ret = $this->add_object_linked(); - if (! $ret) dol_print_error($this->db); - } - /* * Insertion du detail des produits dans la base */ From 9f18b3d6904ed19604c2db2f322626595f705d9f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 19:53:38 +0200 Subject: [PATCH 183/228] Update commonobject.class.php --- htdocs/core/class/commonobject.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 69b43dbe514..458c6a2563b 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -1913,7 +1913,7 @@ abstract class CommonObject * Change the multicurrency rate * * @param double $rate multicurrency rate - * @param int $mode mode 1 : amounts in company currency will be recalculated, mode 2 : amounts in foreign currency + * @param int $mode mode 1 : amounts in company currency will be recalculated, mode 2 : amounts in foreign currency will be recalculated * @return int >0 if OK, <0 if KO */ public function setMulticurrencyRate($rate, $mode = 1) From c0ac8daa61f976ed80d4097b4ca5e92845a8dd36 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 20:18:12 +0200 Subject: [PATCH 184/228] Introduce the color theme "flashy" to use the high contrast color as an option because colors seems too agressive for sensible eyes. --- htdocs/core/lib/usergroups.lib.php | 1 + htdocs/theme/eldy/theme_vars.inc.php | 15 +++++++++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/htdocs/core/lib/usergroups.lib.php b/htdocs/core/lib/usergroups.lib.php index 81e9c8dea73..7c97c38dd4f 100644 --- a/htdocs/core/lib/usergroups.lib.php +++ b/htdocs/core/lib/usergroups.lib.php @@ -956,6 +956,7 @@ function showSkins($fuser, $edit = 0, $foruserprofile = false) $colorBlindOptions = array( 0 => $langs->trans('No'), + 'flashy' => $langs->trans('Flashy'), 'protanopia' => $langs->trans('Protanopia'), 'deuteranopes' => $langs->trans('Deuteranopes'), 'tritanopes' => $langs->trans('Tritanopes'), diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index f3fe44fbd04..6b8ac64a2ec 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -32,11 +32,18 @@ global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); -$theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250,190,30), array(221, 75, 57), array(0,166,90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); -if(!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php +$theme_datacolor = array(array(136,102,136), array(0,130,110), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +if (!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php { - // for now we use the same configuration for all types of color blind - $theme_datacolor = array(array(248, 220, 1), array(9, 85, 187), array(42, 208, 255), array(0, 0, 0), array(169, 169, 169), array(253, 102, 136), array(120, 154, 190), array(146, 146, 55), array(0, 52, 251), array(196, 226, 161), array(222, 160, 41), array(85,135,150), array(150,135,80), array(150,80,150)); + if ($conf->global->MAIN_OPTIMIZEFORCOLORBLIND == 'flashy') + { + $theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250,190,30), array(221, 75, 57), array(0,166,90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); + } + else + { + // for now we use the same configuration for all types of color blind + $theme_datacolor = array(array(248, 220, 1), array(9, 85, 187), array(42, 208, 255), array(0, 0, 0), array(169, 169, 169), array(253, 102, 136), array(120, 154, 190), array(146, 146, 55), array(0, 52, 251), array(196, 226, 161), array(222, 160, 41), array(85,135,150), array(150,135,80), array(150,80,150)); + } } $theme_bgcolor = array(hexdec('F4'),hexdec('F4'),hexdec('F4')); From 17f1962c345a8d680644c6b48e1da89b0a47a872 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 20:19:18 +0200 Subject: [PATCH 185/228] Support theme colors for theme MD --- htdocs/theme/md/theme_vars.inc.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/htdocs/theme/md/theme_vars.inc.php b/htdocs/theme/md/theme_vars.inc.php index 95ac3abdd34..b200746c330 100644 --- a/htdocs/theme/md/theme_vars.inc.php +++ b/htdocs/theme/md/theme_vars.inc.php @@ -29,6 +29,18 @@ global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); $theme_datacolor = array(array(136,102,136), array(0,130,110), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +if (!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php +{ + if ($conf->global->MAIN_OPTIMIZEFORCOLORBLIND == 'flashy') + { + $theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250,190,30), array(221, 75, 57), array(0,166,90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); + } + else + { + // for now we use the same configuration for all types of color blind + $theme_datacolor = array(array(248, 220, 1), array(9, 85, 187), array(42, 208, 255), array(0, 0, 0), array(169, 169, 169), array(253, 102, 136), array(120, 154, 190), array(146, 146, 55), array(0, 52, 251), array(196, 226, 161), array(222, 160, 41), array(85,135,150), array(150,135,80), array(150,80,150)); + } +} $theme_bgcolor = array(hexdec('F4'),hexdec('F4'),hexdec('F4')); $theme_bgcoloronglet = array(hexdec('DE'),hexdec('E7'),hexdec('EC')); From 56bc7b62ff0b4e5069ffc0bd22a26d9acaa20d96 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 20:25:08 +0200 Subject: [PATCH 186/228] Update products.lang --- htdocs/langs/en_US/products.lang | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/langs/en_US/products.lang b/htdocs/langs/en_US/products.lang index d9cf127b40d..73e672284de 100644 --- a/htdocs/langs/en_US/products.lang +++ b/htdocs/langs/en_US/products.lang @@ -341,4 +341,3 @@ ErrorDestinationProductNotFound=Destination product not found ErrorProductCombinationNotFound=Product variant not found ActionAvailableOnVariantProductOnly=Action only available on the variant of product ProductsPricePerCustomer=Product prices per customers -GlobalSearchOnExtrafield=Global search : apply on extrafields too (Warning : date format is YYYY-MM-DD) From 64e52789d643392f1ef9fb4f0e477bb9115dddae Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 20:39:47 +0200 Subject: [PATCH 187/228] FIX #11591 FIX #11592 --- htdocs/contact/class/contact.class.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/htdocs/contact/class/contact.class.php b/htdocs/contact/class/contact.class.php index f1ebeddd30e..bae8632e289 100644 --- a/htdocs/contact/class/contact.class.php +++ b/htdocs/contact/class/contact.class.php @@ -1216,11 +1216,12 @@ class Contact extends CommonObject public function getCivilityLabel() { global $langs; - $langs->load("dict"); - $code=(! empty($this->civility_id)?$this->civility:(! empty($this->civilite)?$this->civilite:'')); + $code=($this->civility_code ? $this->civility_code : (! empty($this->civility_id)?$this->civility:(! empty($this->civilite)?$this->civilite:''))); if (empty($code)) return ''; - return $langs->getLabelFromKey($this->db, "Civility".$code, "c_civility", "code", "label", $code); + + $langs->load("dict"); + return $langs->getLabelFromKey($this->db, "Civility".$code, "c_civility", "code", "label", $code); } /** From b0f0f655e9d2eea4f50cce60dbb80cd2653d01ac Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 20:46:53 +0200 Subject: [PATCH 188/228] Update doc --- .github/CONTRIBUTING.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index a13037402f8..19c076242f8 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -115,12 +115,14 @@ Also, some code changes need a prior approbation: Once a PR has been submitted, you may need to wait for its integration. It is common that the project leader let the PR open for a long delay to allow every developer discuss about the PR. +If the label of PR start with "WIP" (Work In Progress), it will not be analyzed (until you change the label of PR). + If your PR has errors reported by the Continuous Integration Platform, it means your PR is not valid and nothing will be done with it. It will be kept open to allow developers to fix this, or it may be closed several month later. Don't expect anything on your PR if you have such errors, you MUST first fix the Continuous Integration error to have it taken into consideration. If the PR is valid, and is kept open for a long time, a tag will also be added on the PR to describe the status of your PR and why the PR is kept open. By putting your mouse on the tag, you will get a full explanation of the tag/status that explain why your PR has not been integrated yet. -In most cases, it give you information of things you have to do to have the PR taken into consideration (for example a change is requested, a conflict is expected to be solved, some questions were asked). If you have a yellow, red flag of purple flag, don't expect to have your PR validated. You must first provide the answer the flag ask you. The majority of PR are waiting a developer action. +In most cases, it gives you information of things you have to do to have the PR taken into consideration (for example a change is requested, a conflict is expected to be solved, some questions were asked). If you have a yellow, red flag of purple flag, don't expect to have your PR validated. You must first provide the answer the flag ask you. The majority of PR are waiting an action of the developer/author. -Around 95% of submitted PR are reviewed and tagged. Even if this is one of the most important ratio of answered PR in Open Source world, don't expect the core team to reach the 100%. With the increasing popularity of Dolibarr, this ratio will probably decrease in future. +Statistics on Dolibarr project shows that around 95% of submitted PR are reviewed and tagged. This is one of the most important ratio of answered PR in Open Source world. Don't expect the core team to reach the 100%. With the increasing popularity of Dolibarr, this ratio will probably decrease in future. ### Resources From 4bed1b9a3d63391b1c12eae9f251ecc695566192 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= Date: Thu, 15 Aug 2019 22:21:31 +0200 Subject: [PATCH 189/228] Fix #11683 Correct links to create a new product or service from search results --- htdocs/product/list.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/htdocs/product/list.php b/htdocs/product/list.php index 460e9d5ee45..e7e8f1e4999 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -458,6 +458,10 @@ if ($resql) if($type == Product::TYPE_SERVICE) $rightskey='service'; if($user->rights->{$rightskey}->creer) { + if ($type === "") { + $newcardbutton.= dolGetButtonTitle($langs->trans('NewProduct'), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/product/card.php?action=create&type=0'); + $type = Product::TYPE_SERVICE; + } $label='NewProduct'; if($type == Product::TYPE_SERVICE) $label='NewService'; $newcardbutton.= dolGetButtonTitle($langs->trans($label), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/product/card.php?action=create&type='.$type); From 6a2d37c5c83d1d286c8e57024c16e0015ef59439 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= Date: Thu, 15 Aug 2019 22:49:21 +0200 Subject: [PATCH 190/228] Fix code style / CI. --- htdocs/admin/pdf.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/admin/pdf.php b/htdocs/admin/pdf.php index e2a99441ea8..56c6f977827 100644 --- a/htdocs/admin/pdf.php +++ b/htdocs/admin/pdf.php @@ -283,7 +283,7 @@ if ($action == 'edit') // Edit //Invert sender and recipient print ''.$langs->trans("SwapSenderAndRecipientOnPDF").''; - print $form->selectyesno('MAIN_INVERT_SENDER_RECIPIENT',(! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT))?$conf->global->MAIN_INVERT_SENDER_RECIPIENT:0,1); + print $form->selectyesno('MAIN_INVERT_SENDER_RECIPIENT', (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT))?$conf->global->MAIN_INVERT_SENDER_RECIPIENT:0, 1); print ''; // Place customer adress to the ISO location From 0045428c6c623649e998ca1d648d1a36766171c9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 23:45:28 +0200 Subject: [PATCH 191/228] Fix link --- htdocs/core/lib/website.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 28633c5fad9..2421ff19091 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -157,7 +157,7 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c // Replace relative link / with dolibarr URL $content = preg_replace('/(href=")\/\"/', '\1!~!~!~'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageid='.$website->fk_default_home.'"', $content, -1, $nbrep); // Replace relative link /xxx.php#aaa or /xxx.php with dolibarr URL (we discard param ?...) - $content = preg_replace('/(href=")\/?([^:\"\!]*)\.php(#[^\"<>]*)?\"/', '\1!~!~!~'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageref=\2\4"', $content, -1, $nbrep); + $content = preg_replace('/(href=")\/?([^:\"\!]*)\.php(#[^\"<>]*)?\"/', '\1!~!~!~'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageref=\2\3"', $content, -1, $nbrep); // Replace relative link /xxx.php?a=b&c=d#aaa or /xxx.php?a=b&c=d with dolibarr URL $content = preg_replace('/(href=")\/?([^:\"\!]*)\.php\?([^#\"<>]*)(#[^\"<>]*)?\"/', '\1!~!~!~'.DOL_URL_ROOT.'/public/website/index.php?website='.$website->ref.'&pageref=\2&\3\4"', $content, -1, $nbrep); From bf6f92edf8552cf1c23c2650507ef1abd1815cac Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 15 Aug 2019 23:54:33 +0200 Subject: [PATCH 192/228] Fix template --- htdocs/website/samples/page-sample-dynamiccontent.html | 2 +- htdocs/website/samples/page-sample-empty.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/website/samples/page-sample-dynamiccontent.html b/htdocs/website/samples/page-sample-dynamiccontent.html index 41355f1b29b..c0e217dcc72 100644 --- a/htdocs/website/samples/page-sample-dynamiccontent.html +++ b/htdocs/website/samples/page-sample-dynamiccontent.html @@ -1,4 +1,4 @@ - +

__(MyContainerTitle)__ diff --git a/htdocs/website/samples/page-sample-empty.html b/htdocs/website/samples/page-sample-empty.html index 8caea620d80..d68e73870d9 100644 --- a/htdocs/website/samples/page-sample-empty.html +++ b/htdocs/website/samples/page-sample-empty.html @@ -1,3 +1,3 @@ - +
From 31c26edaf722df2ce70d0901853f033aa7915c85 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 00:31:55 +0200 Subject: [PATCH 193/228] Fix link --- htdocs/core/lib/website.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 2421ff19091..1ae45fee768 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -159,7 +159,7 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c // Replace relative link /xxx.php#aaa or /xxx.php with dolibarr URL (we discard param ?...) $content = preg_replace('/(href=")\/?([^:\"\!]*)\.php(#[^\"<>]*)?\"/', '\1!~!~!~'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageref=\2\3"', $content, -1, $nbrep); // Replace relative link /xxx.php?a=b&c=d#aaa or /xxx.php?a=b&c=d with dolibarr URL - $content = preg_replace('/(href=")\/?([^:\"\!]*)\.php\?([^#\"<>]*)(#[^\"<>]*)?\"/', '\1!~!~!~'.DOL_URL_ROOT.'/public/website/index.php?website='.$website->ref.'&pageref=\2&\3\4"', $content, -1, $nbrep); + $content = preg_replace('/(href=")\/?([^:\"\!]*)\.php\?([^#\"<>]*)(#[^\"<>]*)?\"/', '\1!~!~!~'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageref=\2&\3\4"', $content, -1, $nbrep); // Fix relative link into medias with correct URL after the DOL_URL_ROOT: ../url("medias/ $content = preg_replace('/url\((["\']?)medias\//', 'url(\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); From d70e6e4e9a32dedbf637eadacd2574161f104c36 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 02:17:33 +0200 Subject: [PATCH 194/228] Fix record file with empty name --- htdocs/website/class/website.class.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/htdocs/website/class/website.class.php b/htdocs/website/class/website.class.php index 31b10401c8c..147955db4a5 100644 --- a/htdocs/website/class/website.class.php +++ b/htdocs/website/class/website.class.php @@ -1065,6 +1065,8 @@ class Website extends CommonObject { while (! feof($fp)) { + $reg = array(); + // Warning fgets with second parameter that is null or 0 hang. $buf = fgets($fp, 65000); if (preg_match('/^-- Page ID (\d+)\s[^\s]+\s(\d+).*Aliases\s(.*)\s--;/i', $buf, $reg)) @@ -1086,8 +1088,11 @@ class Website extends CommonObject // Regenerate alternative aliases pages foreach($aliasesarray as $aliasshortcuttocreate) { - $filealias=$conf->website->dir_output.'/'.$object->ref.'/'.$aliasshortcuttocreate.'.php'; - dolSavePageAlias($filealias, $object, $objectpagestatic); + if (trim($aliasshortcuttocreate)) + { + $filealias=$conf->website->dir_output.'/'.$object->ref.'/'.trim($aliasshortcuttocreate).'.php'; + dolSavePageAlias($filealias, $object, $objectpagestatic); + } } } } From 08038e5078fea8dfa8755c90b5ec65758f7b4e37 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 02:31:06 +0200 Subject: [PATCH 195/228] FIX save of empty files --- htdocs/core/lib/website2.lib.php | 2 +- htdocs/website/class/website.class.php | 11 +++++++---- htdocs/website/index.php | 7 +++++-- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php index cf6082f3bd8..357c050afd5 100644 --- a/htdocs/core/lib/website2.lib.php +++ b/htdocs/core/lib/website2.lib.php @@ -61,7 +61,7 @@ function dolSavePageAlias($filealias, $object, $objectpage) global $conf; // Now create the .tpl file (duplicate code with actions updatesource or updatecontent but we need this to save new header) - dol_syslog("We regenerate the alias page filealias=".$filealias); + dol_syslog("dolSavePageAlias We regenerate the alias page filealias=".$filealias); $aliascontent = 'website->dir_output.'/'.$object->ref.'/'.trim($aliasshortcuttocreate).'.php'; - dolSavePageAlias($filealias, $object, $objectpagestatic); + if (trim($aliasshortcuttocreate)) + { + $filealias=$conf->website->dir_output.'/'.$object->ref.'/'.trim($aliasshortcuttocreate).'.php'; + dolSavePageAlias($filealias, $object, $objectpagestatic); + } } } } diff --git a/htdocs/website/index.php b/htdocs/website/index.php index 46121913c2b..273e74858ce 100644 --- a/htdocs/website/index.php +++ b/htdocs/website/index.php @@ -1393,8 +1393,11 @@ if ($action == 'updatemeta') { foreach($tmpaltaliases as $tmpaliasalt) { - $result=dolSavePageAlias($pathofwebsite.'/'.trim($tmpaliasalt).'.php', $object, $objectpage); - if (! $result) setEventMessages('Failed to write file '.$pathofwebsite.'/'.trim($tmpaliasalt).'.php', null, 'errors'); + if (trim($tmpaliasalt)) + { + $result=dolSavePageAlias($pathofwebsite.'/'.trim($tmpaliasalt).'.php', $object, $objectpage); + if (! $result) setEventMessages('Failed to write file '.$pathofwebsite.'/'.trim($tmpaliasalt).'.php', null, 'errors'); + } } } } From 2510c1e5e46336fb649de246250e39c237e442a7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 03:05:55 +0200 Subject: [PATCH 196/228] Better help text --- htdocs/core/lib/website.lib.php | 5 +++-- htdocs/core/tpl/filemanager.tpl.php | 7 ++++--- htdocs/langs/en_US/main.lang | 1 + 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 1ae45fee768..9805801b4b5 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -154,7 +154,7 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c // Protect the link styles.css.php to any replacement that we make after. $content = str_replace('href="styles.css.php', 'href="!~!~!~styles.css.php', $content); - // Replace relative link / with dolibarr URL + // Replace relative link '/' with dolibarr URL $content = preg_replace('/(href=")\/\"/', '\1!~!~!~'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageid='.$website->fk_default_home.'"', $content, -1, $nbrep); // Replace relative link /xxx.php#aaa or /xxx.php with dolibarr URL (we discard param ?...) $content = preg_replace('/(href=")\/?([^:\"\!]*)\.php(#[^\"<>]*)?\"/', '\1!~!~!~'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageref=\2\3"', $content, -1, $nbrep); @@ -165,7 +165,8 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c $content = preg_replace('/url\((["\']?)medias\//', 'url(\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); $content = preg_replace('/data-slide-bg=(["\']?)medias\//', 'data-slide-bg=\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); - // ]*src=")(medias\/)/', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); // ]*src=")(?!(http|\/?viewimage|'.preg_quote(DOL_URL_ROOT, '/').'\/viewimage))/', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); diff --git a/htdocs/core/tpl/filemanager.tpl.php b/htdocs/core/tpl/filemanager.tpl.php index c0eff19fa84..a178f6400b8 100644 --- a/htdocs/core/tpl/filemanager.tpl.php +++ b/htdocs/core/tpl/filemanager.tpl.php @@ -163,11 +163,12 @@ if (empty($action) || $action == 'editfile' || $action == 'file_manager' || preg // Show the link to "Root" if ($showroot) { - print ''; + print ''; } - - print ''; // Show filemanager tree (will be filled by a call of ajax /ecm/tpl/enablefiletreeajax.tpl.php, later, that executes ajaxdirtree.php) diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index 880978a13e5..1775ab266bb 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -705,6 +705,7 @@ DateOfSignature=Date of signature HidePassword=Show command with password hidden UnHidePassword=Show real command with clear password Root=Root +RootOfMedias=Root of public medias (/medias) Informations=Information Page=Page Notes=Notes From 7580efbd4ebbe9b2a2c4a19643e228c854cebba8 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 04:32:06 +0200 Subject: [PATCH 197/228] Fix link replacement --- htdocs/core/lib/website.lib.php | 33 +++++++++++++++++++++++++++------ 1 file changed, 27 insertions(+), 6 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 9805801b4b5..e7f86a153d7 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -153,6 +153,10 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c // Protect the link styles.css.php to any replacement that we make after. $content = str_replace('href="styles.css.php', 'href="!~!~!~styles.css.php', $content); + $content = str_replace('href="http', 'href="!~!~!~http', $content); + $content = str_replace('href="//', 'href="!~!~!~//', $content); + $content = str_replace('src="/viewimage.php', 'src="!~!~!~/viewimage.php', $content); + $content = str_replace('src="'.DOL_URL_ROOT.'/viewimage.php', 'src="!~!~!~'.DOL_URL_ROOT.'/viewimage.php', $content); // Replace relative link '/' with dolibarr URL $content = preg_replace('/(href=")\/\"/', '\1!~!~!~'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageid='.$website->fk_default_home.'"', $content, -1, $nbrep); @@ -167,9 +171,9 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c // ]*src=")(medias\/)/', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); + $content = preg_replace('/(]*src=")\/?medias\//', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); // ]*src=")(?!(http|\/?viewimage|'.preg_quote(DOL_URL_ROOT, '/').'\/viewimage))/', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); + $content = preg_replace('/(]*src=")\/?([^:\"\!]+)\"/', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=\2"', $content, -1, $nbrep); // ]*src=")(\/?viewimage\.php)/', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php', $content, -1, $nbrep); @@ -183,6 +187,8 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c // Fix relative link /viewimage.php with correct URL after the DOL_URL_ROOT: ...href="/viewimage.php?modulepart=" $content=preg_replace('/(url\(")(\/?viewimage\.php\?[^\"]*modulepart=[^\"]*)(\")/', '\1!~!~!~'.DOL_URL_ROOT.'\2\3', $content, -1, $nbrep); + // Fix relative URL + $content = str_replace('src="!~!~!~/viewimage.php', 'src="!~!~!~'.DOL_URL_ROOT.'/viewimage.php', $content); // Remove the protection tag !~!~!~ $content = str_replace('!~!~!~', '', $content); @@ -230,6 +236,10 @@ function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') // Protect the link styles.css.php to any replacement that we make after. $content = str_replace('href="styles.css.php', 'href="!~!~!~styles.css.php', $content); + $content = str_replace('href="http', 'href="!~!~!~http', $content); + $content = str_replace('href="//', 'href="!~!~!~//', $content); + $content = str_replace('src="/viewimage.php', 'src="!~!~!~/viewimage.php', $content); + $content = str_replace('src="'.DOL_URL_ROOT.'/viewimage.php', 'src="!~!~!~'.DOL_URL_ROOT.'/viewimage.php', $content); // Replace relative link / with dolibarr URL: ...href="/"... $content = preg_replace('/(href=")\/\"/', '\1!~!~!~'.DOL_URL_ROOT.'/public/website/index.php?website='.$website->ref.'"', $content, -1, $nbrep); @@ -253,16 +263,19 @@ function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') $content = preg_replace('/url\((["\']?)medias\//', 'url(\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); $content = preg_replace('/data-slide-bg=(["\']?)medias\//', 'data-slide-bg=\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); - // ]*src=")(medias\/)/', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); + // ]*src=")\/?medias\//', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); // ]*src=")(?!(http|\/?viewimage|'.preg_quote(DOL_URL_ROOT, '/').'\/viewimage))/', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=', $content, -1, $nbrep); + $content = preg_replace('/(]*src=")\/?([^:\"\!]+)\"/', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php?modulepart=medias&file=\2"', $content, -1, $nbrep); // ]*src=")(\/?viewimage\.php)/', '\1!~!~!~'.DOL_URL_ROOT.'/viewimage.php', $content, -1, $nbrep); // action="newpage.php" => action="dolibarr/website/index.php?website=...&pageref=newpage $content = preg_replace('/(action=")\/?([^:\"]*)(\.php\")/', '\1!~!~!~'.DOL_URL_ROOT.'/public/website/index.php?website='.$website->ref.'&pageref=\2"', $content, -1, $nbrep); + // Fix relative URL + $content = str_replace('src="!~!~!~/viewimage.php', 'src="!~!~!~'.DOL_URL_ROOT.'/viewimage.php', $content); // Remove the protection tag !~!~!~ $content = str_replace('!~!~!~', '', $content); } @@ -277,7 +290,11 @@ function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') $nbrep=0; if (! $symlinktomediaexists) { - $content=preg_replace('/(]*src=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep); + // ]*src=")\/?image\//', '\1/wrapper.php?modulepart=medias&file=medias/image/', $content, -1, $nbrep); + $content=preg_replace('/(url\(["\']?)\/?image\//', '\1/wrapper.php?modulepart=medias&file=medias/image/', $content, -1, $nbrep); + + $content=preg_replace('/(]*src=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep); $content=preg_replace('/(]*href=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep); $content=preg_replace('/(]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep); @@ -291,6 +308,10 @@ function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') } else { + // ]*src=")\/?image\//', '\1medias/image/', $content, -1, $nbrep); + $content=preg_replace('/(url\(["\']?)\/?image\//', '\1medias/image/', $content, -1, $nbrep); + $content=preg_replace('/(]*src=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep); $content=preg_replace('/(]*href=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep); From d5ce7fbaaf6a279df750738a9aa20fe9d42ae5eb Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 05:01:54 +0200 Subject: [PATCH 198/228] Fix links --- htdocs/core/lib/website.lib.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index e7f86a153d7..455d28c84e8 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -155,8 +155,12 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c $content = str_replace('href="styles.css.php', 'href="!~!~!~styles.css.php', $content); $content = str_replace('href="http', 'href="!~!~!~http', $content); $content = str_replace('href="//', 'href="!~!~!~//', $content); + $content = str_replace('src="viewimage.php', 'src="!~!~!~/viewimage.php', $content); $content = str_replace('src="/viewimage.php', 'src="!~!~!~/viewimage.php', $content); $content = str_replace('src="'.DOL_URL_ROOT.'/viewimage.php', 'src="!~!~!~'.DOL_URL_ROOT.'/viewimage.php', $content); + $content = str_replace('href="document.php', 'href="!~!~!~/document.php', $content); + $content = str_replace('href="/document.php', 'href="!~!~!~/document.php', $content); + $content = str_replace('href="'.DOL_URL_ROOT.'/document.php', 'href="!~!~!~'.DOL_URL_ROOT.'/document.php', $content); // Replace relative link '/' with dolibarr URL $content = preg_replace('/(href=")\/\"/', '\1!~!~!~'.DOL_URL_ROOT.'/website/index.php?website='.$website->ref.'&pageid='.$website->fk_default_home.'"', $content, -1, $nbrep); @@ -189,6 +193,7 @@ function dolWebsiteReplacementOfLinks($website, $content, $removephppart = 0, $c // Fix relative URL $content = str_replace('src="!~!~!~/viewimage.php', 'src="!~!~!~'.DOL_URL_ROOT.'/viewimage.php', $content); + $content = str_replace('href="!~!~!~/document.php', 'href="!~!~!~'.DOL_URL_ROOT.'/document.php', $content); // Remove the protection tag !~!~!~ $content = str_replace('!~!~!~', '', $content); @@ -238,8 +243,12 @@ function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') $content = str_replace('href="styles.css.php', 'href="!~!~!~styles.css.php', $content); $content = str_replace('href="http', 'href="!~!~!~http', $content); $content = str_replace('href="//', 'href="!~!~!~//', $content); + $content = str_replace('src="viewimage.php', 'src="!~!~!~/viewimage.php', $content); $content = str_replace('src="/viewimage.php', 'src="!~!~!~/viewimage.php', $content); $content = str_replace('src="'.DOL_URL_ROOT.'/viewimage.php', 'src="!~!~!~'.DOL_URL_ROOT.'/viewimage.php', $content); + $content = str_replace('href="document.php', 'href="!~!~!~/document.php', $content); + $content = str_replace('href="/document.php', 'href="!~!~!~/document.php', $content); + $content = str_replace('href="'.DOL_URL_ROOT.'/document.php', 'href="!~!~!~'.DOL_URL_ROOT.'/document.php', $content); // Replace relative link / with dolibarr URL: ...href="/"... $content = preg_replace('/(href=")\/\"/', '\1!~!~!~'.DOL_URL_ROOT.'/public/website/index.php?website='.$website->ref.'"', $content, -1, $nbrep); @@ -276,6 +285,7 @@ function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') // Fix relative URL $content = str_replace('src="!~!~!~/viewimage.php', 'src="!~!~!~'.DOL_URL_ROOT.'/viewimage.php', $content); + $content = str_replace('href="!~!~!~/document.php', 'href="!~!~!~'.DOL_URL_ROOT.'/document.php', $content); // Remove the protection tag !~!~!~ $content = str_replace('!~!~!~', '', $content); } @@ -313,6 +323,7 @@ function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') $content=preg_replace('/(url\(["\']?)\/?image\//', '\1medias/image/', $content, -1, $nbrep); $content=preg_replace('/(]*src=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep); + $content=preg_replace('/(]*href=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep); $content=preg_replace('/(]*href=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep); $content=preg_replace('/(]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep); From 9a455cf1d6089392a2613241d720332799b0b472 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 05:03:48 +0200 Subject: [PATCH 199/228] Fix link --- htdocs/core/lib/website.lib.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 455d28c84e8..e4db83140cd 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -305,6 +305,7 @@ function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') $content=preg_replace('/(url\(["\']?)\/?image\//', '\1/wrapper.php?modulepart=medias&file=medias/image/', $content, -1, $nbrep); $content=preg_replace('/(]*src=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep); + $content=preg_replace('/(]*href=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep); $content=preg_replace('/(]*href=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep); $content=preg_replace('/(]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=medias\3file=\4\5', $content, -1, $nbrep); From 62438b61f04873f9a0fc3e1105c8eab0aa4b20bd Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 05:14:20 +0200 Subject: [PATCH 200/228] Better error message --- htdocs/core/lib/files.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index c7573af557a..5d408f3bdd2 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -2927,7 +2927,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity, { if (empty($conf->$modulepart->dir_output)) // modulepart not supported { - dol_print_error('', 'Error call dol_check_secure_access_document with not supported value for modulepart parameter ('.$modulepart.')'); + dol_print_error('', 'Error call dol_check_secure_access_document with not supported value for modulepart parameter ('.$modulepart.'). The module for this modulepart value may not be activated.'); exit; } From 63520e1d9b08e4431388e62ad2ebcaa65cdb0c22 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 05:32:24 +0200 Subject: [PATCH 201/228] Fix link --- htdocs/core/lib/website.lib.php | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index e4db83140cd..13dcd9499ed 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -316,25 +316,33 @@ function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') $content=preg_replace('/(url\(["\']?)[^\)]*viewimage\.php([^\)]*)hashp=([^\)]*)(["\']?\))/', '\1/wrapper.php\2hashp\3\4', $content, -1, $nbrep); $content=preg_replace('/(]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=mycompany([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=mycompany\3file=\4\5', $content, -1, $nbrep); + + // If some links to documents or viewimage remains, we replace with wrapper + $content=preg_replace('/(]*src=")\/?viewimage\.php/', '\1/wrapper.php', $content, -1, $nbrep); + $content=preg_replace('/(]*href=")\/?documents\.php/', '\1/wrapper.php', $content, -1, $nbrep); } else { // ]*src=")\/?image\//', '\1medias/image/', $content, -1, $nbrep); - $content=preg_replace('/(url\(["\']?)\/?image\//', '\1medias/image/', $content, -1, $nbrep); + $content=preg_replace('/(]*src=")\/?image\//', '\1/medias/image/', $content, -1, $nbrep); + $content=preg_replace('/(url\(["\']?)\/?image\//', '\1/medias/image/', $content, -1, $nbrep); - $content=preg_replace('/(]*src=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep); - $content=preg_replace('/(]*href=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep); + $content=preg_replace('/(]*src=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/medias/\4\5', $content, -1, $nbrep); + $content=preg_replace('/(]*href=")[^\"]*document\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/medias/\4\5', $content, -1, $nbrep); - $content=preg_replace('/(]*href=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep); - $content=preg_replace('/(]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1medias/\4\5', $content, -1, $nbrep); - $content=preg_replace('/(url\(["\']?)[^\)]*viewimage\.php([^\)]*)modulepart=medias([^\)]*)file=([^\)]*)(["\']?\))/', '\1medias/\4\5', $content, -1, $nbrep); + $content=preg_replace('/(]*href=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/medias/\4\5', $content, -1, $nbrep); + $content=preg_replace('/(]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=medias([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/medias/\4\5', $content, -1, $nbrep); + $content=preg_replace('/(url\(["\']?)[^\)]*viewimage\.php([^\)]*)modulepart=medias([^\)]*)file=([^\)]*)(["\']?\))/', '\1/medias/\4\5', $content, -1, $nbrep); $content=preg_replace('/(]*href=")[^\"]*viewimage\.php([^\"]*)hashp=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2hashp=\3\4', $content, -1, $nbrep); $content=preg_replace('/(]*src=")[^\"]*viewimage\.php([^\"]*)hashp=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2hashp=\3\4', $content, -1, $nbrep); $content=preg_replace('/(url\(["\']?)[^\)]*viewimage\.php([^\)]*)hashp=([^\)]*)(["\']?\))/', '\1/wrapper.php\2hashp=\3\4', $content, -1, $nbrep); $content=preg_replace('/(]*src=")[^\"]*viewimage\.php([^\"]*)modulepart=mycompany([^\"]*)file=([^\"]*)("[^>]*>)/', '\1/wrapper.php\2modulepart=mycompany\3file=\4\5', $content, -1, $nbrep); + + // If some links to documents or viewimage remains, we replace with wrapper + $content=preg_replace('/(]*src=")\/?viewimage\.php/', '\1/wrapper.php', $content, -1, $nbrep); + $content=preg_replace('/(]*href=")\/?documents\.php/', '\1/wrapper.php', $content, -1, $nbrep); } } From 318b27e0848e2df018feb19e0fdd32722b81b178 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 05:33:45 +0200 Subject: [PATCH 202/228] Fix link --- htdocs/core/lib/website.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/website.lib.php b/htdocs/core/lib/website.lib.php index 13dcd9499ed..74c06201507 100644 --- a/htdocs/core/lib/website.lib.php +++ b/htdocs/core/lib/website.lib.php @@ -342,7 +342,7 @@ function dolWebsiteOutput($content, $contenttype = 'html', $containerid = '') // If some links to documents or viewimage remains, we replace with wrapper $content=preg_replace('/(]*src=")\/?viewimage\.php/', '\1/wrapper.php', $content, -1, $nbrep); - $content=preg_replace('/(]*href=")\/?documents\.php/', '\1/wrapper.php', $content, -1, $nbrep); + $content=preg_replace('/(]*href=")\/?document\.php/', '\1/wrapper.php', $content, -1, $nbrep); } } From 1f2eb31e41cb7e0f145b8e1b4cdc569d7827d9f6 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 06:06:36 +0200 Subject: [PATCH 203/228] Set utf-8 in lowercase --- htdocs/core/lib/website2.lib.php | 2 +- htdocs/main.inc.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php index 357c050afd5..1d4f1fdb37f 100644 --- a/htdocs/core/lib/website2.lib.php +++ b/htdocs/core/lib/website2.lib.php @@ -113,7 +113,7 @@ function dolSavePageContent($filetpl, $object, $objectpage) $tplcontent.= ''."\n"; $tplcontent.= ''."\n"; $tplcontent.= ''.dol_string_nohtmltag($objectpage->title, 0, 'UTF-8').''."\n"; - $tplcontent.= ''."\n"; + $tplcontent.= ''."\n"; $tplcontent.= ''."\n"; $tplcontent.= ''."\n"; $tplcontent.= ''."\n"; diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index 58fe4008a28..7c11e6d10a7 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -1217,7 +1217,7 @@ function top_htmlhead($head, $title = '', $disablejs = 0, $disablehead = 0, $arr if (GETPOST('dol_basehref', 'alpha')) print ''."\n"; // Displays meta - print ''."\n"; + print ''."\n"; print ''."\n"; // Do not index print ''."\n"; // Scale for mobile device print ''."\n"; From e61f883561a3d1b9a823e408d3d48ef906f8a53e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 06:25:58 +0200 Subject: [PATCH 204/228] Color --- htdocs/theme/eldy/theme_vars.inc.php | 2 +- htdocs/theme/md/theme_vars.inc.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index 6b8ac64a2ec..652ece12837 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -32,7 +32,7 @@ global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); -$theme_datacolor = array(array(136,102,136), array(0,130,110), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +$theme_datacolor = array(array(0, 147, 183), array(136,102,136), array(0,130,110), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); if (!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php { if ($conf->global->MAIN_OPTIMIZEFORCOLORBLIND == 'flashy') diff --git a/htdocs/theme/md/theme_vars.inc.php b/htdocs/theme/md/theme_vars.inc.php index b200746c330..0800f92b74b 100644 --- a/htdocs/theme/md/theme_vars.inc.php +++ b/htdocs/theme/md/theme_vars.inc.php @@ -28,7 +28,7 @@ global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); -$theme_datacolor = array(array(136,102,136), array(0,130,110), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +$theme_datacolor = array(array(0, 147, 183), array(136,102,136), array(0,130,110), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); if (!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php { if ($conf->global->MAIN_OPTIMIZEFORCOLORBLIND == 'flashy') From 23b1c24bf7fb049b8c611d1ef357dfa54c9db001 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 06:28:25 +0200 Subject: [PATCH 205/228] Fix template --- .../websites/website_template-stellar.zip | Bin 197324 -> 191327 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/htdocs/install/doctemplates/websites/website_template-stellar.zip b/htdocs/install/doctemplates/websites/website_template-stellar.zip index 728b9f37b35f955bb766cc70df8c494c6a434834..b4d55a83e7314ffbc3a3deb243081f17395ff972 100644 GIT binary patch delta 20286 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 delta 26552 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 From b8cc00eb66a37cc841b99826d4f73673028942bb Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 06:41:07 +0200 Subject: [PATCH 206/228] Colors for graph are same by defaul than flashy, but less flashy. --- htdocs/theme/eldy/theme_vars.inc.php | 4 ++-- htdocs/theme/md/theme_vars.inc.php | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index 652ece12837..2120a2e4793 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -32,12 +32,12 @@ global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); -$theme_datacolor = array(array(0, 147, 183), array(136,102,136), array(0,130,110), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +$theme_datacolor = array(array(137, 56, 161), array(60, 147, 183), array(250, 190, 80), array(191, 75, 57), array(80, 166, 90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); if (!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php { if ($conf->global->MAIN_OPTIMIZEFORCOLORBLIND == 'flashy') { - $theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250,190,30), array(221, 75, 57), array(0,166,90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); + $theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250, 190, 30), array(221, 75, 57), array(0,166,90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); } else { diff --git a/htdocs/theme/md/theme_vars.inc.php b/htdocs/theme/md/theme_vars.inc.php index 0800f92b74b..ebc085e5279 100644 --- a/htdocs/theme/md/theme_vars.inc.php +++ b/htdocs/theme/md/theme_vars.inc.php @@ -28,12 +28,12 @@ global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); -$theme_datacolor = array(array(0, 147, 183), array(136,102,136), array(0,130,110), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(250,190,30), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +$theme_datacolor = array(array(137, 56, 161), array(60, 147, 183), array(250, 190, 80), array(191, 75, 57), array(80, 166, 90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); if (!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php { if ($conf->global->MAIN_OPTIMIZEFORCOLORBLIND == 'flashy') { - $theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250,190,30), array(221, 75, 57), array(0,166,90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); + $theme_datacolor = array(array(157, 56, 191), array(0, 147, 183), array(250,190,30), array(221, 75, 57), array(0, 166, 90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); } else { From 63e590810b94c65f1d492ef0c2d228c23a521c71 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 06:51:32 +0200 Subject: [PATCH 207/228] Still too agressive --- htdocs/theme/eldy/theme_vars.inc.php | 2 +- htdocs/theme/md/theme_vars.inc.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index 2120a2e4793..2f0d0d8a692 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -32,7 +32,7 @@ global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); -$theme_datacolor = array(array(137, 56, 161), array(60, 147, 183), array(250, 190, 80), array(191, 75, 57), array(80, 166, 90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +$theme_datacolor = array(array(137, 86, 161), array(60, 147, 183), array(250, 190, 80), array(191, 75, 57), array(80, 166, 90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); if (!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php { if ($conf->global->MAIN_OPTIMIZEFORCOLORBLIND == 'flashy') diff --git a/htdocs/theme/md/theme_vars.inc.php b/htdocs/theme/md/theme_vars.inc.php index ebc085e5279..5daaf7c08cc 100644 --- a/htdocs/theme/md/theme_vars.inc.php +++ b/htdocs/theme/md/theme_vars.inc.php @@ -28,7 +28,7 @@ global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet; $theme_bordercolor = array(235,235,224); -$theme_datacolor = array(array(137, 56, 161), array(60, 147, 183), array(250, 190, 80), array(191, 75, 57), array(80, 166, 90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); +$theme_datacolor = array(array(137, 86, 161), array(60, 147, 183), array(250, 190, 80), array(191, 75, 57), array(80, 166, 90), array(140,140,220), array(190,120,120), array(190,190,100), array(115,125,150), array(100,170,20), array(150,135,125), array(85,135,150), array(150,135,80), array(150,80,150)); if (!empty($conf->global->MAIN_OPTIMIZEFORCOLORBLIND)) // user is loaded by dolgraph.class.php { if ($conf->global->MAIN_OPTIMIZEFORCOLORBLIND == 'flashy') From d850b8a2624744bd2330c60d55b1c6050bf3e2bc Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 07:02:10 +0200 Subject: [PATCH 208/228] More neutral color --- htdocs/theme/eldy/theme_vars.inc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/theme/eldy/theme_vars.inc.php b/htdocs/theme/eldy/theme_vars.inc.php index 2f0d0d8a692..cbf1ab000be 100644 --- a/htdocs/theme/eldy/theme_vars.inc.php +++ b/htdocs/theme/eldy/theme_vars.inc.php @@ -51,9 +51,9 @@ $theme_bgcoloronglet = array(hexdec('DE'),hexdec('E7'),hexdec('EC')); // Colors $colorbackhmenu1='60,70,100'; // topmenu -$colorbackvmenu1='249,250,252'; // vmenu +$colorbackvmenu1='250,250,250'; // vmenu $colortopbordertitle1='200,200,200'; // top border of title -$colorbacktitle1='233,234,238'; // title of tables,list +$colorbacktitle1='233,234,237'; // title of tables,list $colorbacktabcard1='255,255,255'; // card $colorbacktabactive='234,234,234'; $colorbacklineimpair1='255,255,255'; // line impair From e0310b5d9ba5aee2c9f25730f350ca6bfef67598 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= Date: Fri, 16 Aug 2019 11:38:42 +0200 Subject: [PATCH 209/228] Fix #11682 Missing origin object ref and thirdparty ref in future bank entries --- htdocs/compta/bank/treso.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/compta/bank/treso.php b/htdocs/compta/bank/treso.php index f17e622210e..f9231f4f247 100644 --- a/htdocs/compta/bank/treso.php +++ b/htdocs/compta/bank/treso.php @@ -267,9 +267,9 @@ if ($_REQUEST["account"] || $_REQUEST["ref"]) $parameters = array('obj' => $obj); $reshook = $hookmanager->executeHooks('moreFamily', $parameters, $object, $action); // Note that $action and $object may have been modified by hook if(empty($reshook)){ - $ref = isset($hookmanager->resArray['ref']) ? $hookmanager->resArray['ref'] : ''; - $refcomp = isset($hookmanager->resArray['refcomp']) ? $hookmanager->resArray['refcomp'] : ''; - $paiement = isset($hookmanager->resArray['paiement']) ? $hookmanager->resArray['paiement'] : 0; + $ref = isset($hookmanager->resArray['ref']) ? $hookmanager->resArray['ref'] : $ref; + $refcomp = isset($hookmanager->resArray['refcomp']) ? $hookmanager->resArray['refcomp'] : $refcomp; + $paiement = isset($hookmanager->resArray['paiement']) ? $hookmanager->resArray['paiement'] : $paiement; } $total_ttc = $obj->total_ttc; From 13604b3571bd6febe92b8541bb88d51f59b29fff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean=20Traull=C3=A9?= Date: Fri, 16 Aug 2019 11:55:40 +0200 Subject: [PATCH 210/228] Fix code style / CI. --- htdocs/admin/pdf.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/admin/pdf.php b/htdocs/admin/pdf.php index e2a99441ea8..56c6f977827 100644 --- a/htdocs/admin/pdf.php +++ b/htdocs/admin/pdf.php @@ -283,7 +283,7 @@ if ($action == 'edit') // Edit //Invert sender and recipient print ''.$langs->trans("SwapSenderAndRecipientOnPDF").''; - print $form->selectyesno('MAIN_INVERT_SENDER_RECIPIENT',(! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT))?$conf->global->MAIN_INVERT_SENDER_RECIPIENT:0,1); + print $form->selectyesno('MAIN_INVERT_SENDER_RECIPIENT', (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT))?$conf->global->MAIN_INVERT_SENDER_RECIPIENT:0, 1); print ''; // Place customer adress to the ISO location From 9692ea5faf2ef69bec7328feda1a23092ce55143 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 16:41:53 +0200 Subject: [PATCH 211/228] FIX #11671 CVE-2019-15062 --- htdocs/core/actions_linkedfiles.inc.php | 8 +++----- htdocs/core/class/html.formfile.class.php | 4 ++-- htdocs/user/card.php | 4 ++-- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/htdocs/core/actions_linkedfiles.inc.php b/htdocs/core/actions_linkedfiles.inc.php index 72c78cb8a4d..54243494de4 100644 --- a/htdocs/core/actions_linkedfiles.inc.php +++ b/htdocs/core/actions_linkedfiles.inc.php @@ -125,8 +125,7 @@ if ($action == 'confirm_deletefile' && $confirm == 'yes') { require_once DOL_DOCUMENT_ROOT . '/core/class/link.class.php'; $link = new Link($db); - $link->id = $linkid; - $link->fetch(); + $link->fetch($linkid); $res = $link->delete($user); $langs->load('link'); @@ -160,8 +159,7 @@ elseif ($action == 'confirm_updateline' && GETPOST('save', 'alpha') && GETPOST(' require_once DOL_DOCUMENT_ROOT . '/core/class/link.class.php'; $langs->load('link'); $link = new Link($db); - $link->id = GETPOST('linkid', 'int'); - $f = $link->fetch(); + $f = $link->fetch(GETPOST('linkid', 'int')); if ($f) { $link->url = GETPOST('link', 'alpha'); @@ -169,7 +167,7 @@ elseif ($action == 'confirm_updateline' && GETPOST('save', 'alpha') && GETPOST(' { $link->url = 'http://' . $link->url; } - $link->label = GETPOST('label', 'alpha'); + $link->label = GETPOST('label', 'alphanohtml'); $res = $link->update($user); if (!$res) { diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 5f63d4db66c..d271f90720c 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -1839,7 +1839,7 @@ class FormFile print $langs->trans('Link') . ': '; print ''; print ''; - print $langs->trans('Label') . ': '; + print $langs->trans('Label') . ': '; print ''; print '' . dol_print_date(dol_now(), "dayhour", "tzuser") . ''; print ''; @@ -1853,7 +1853,7 @@ class FormFile print ''; print img_picto('', 'object_globe').' '; print ''; - print $link->label; + print dol_escape_htmltag($link->label); print ''; print ''."\n"; print ''; diff --git a/htdocs/user/card.php b/htdocs/user/card.php index 36514aafd8e..13035d1fb0e 100644 --- a/htdocs/user/card.php +++ b/htdocs/user/card.php @@ -329,12 +329,12 @@ if (empty($reshook)) { { $error = 0; - if (!$_POST["lastname"]) { + if (! GETPOST("lastname", 'alpha')) { setEventMessages($langs->trans("NameNotDefined"), null, 'errors'); $action = "edit"; // Go back to create page $error ++; } - if (!$_POST["login"]) { + if (! GETPOST("login", 'alpha')) { setEventMessages($langs->trans("LoginNotDefined"), null, 'errors'); $action = "edit"; // Go back to create page $error ++; From b63c4b74b8e843614e17247554f6f614e53b65fe Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 16:56:28 +0200 Subject: [PATCH 212/228] Code comment --- htdocs/filefunc.inc.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/filefunc.inc.php b/htdocs/filefunc.inc.php index b4aa814f2a5..85ede0efd39 100644 --- a/htdocs/filefunc.inc.php +++ b/htdocs/filefunc.inc.php @@ -149,6 +149,7 @@ if (empty($dolibarr_strict_mode)) $dolibarr_strict_mode=0; // For debug in php s // This test check if referrer ($_SERVER['HTTP_REFERER']) is same web site than Dolibarr ($_SERVER['HTTP_HOST']) // when we post forms (we allow GET to allow direct link to access a particular page). // Note about $_SERVER[HTTP_HOST/SERVER_NAME]: http://shiflett.org/blog/2006/mar/server-name-versus-http-host +// See also option $conf->global->MAIN_SECURITY_CSRF_WITH_TOKEN for a stronger CSRF protection. if (! defined('NOCSRFCHECK') && empty($dolibarr_nocsrfcheck)) { if (! empty($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] != 'GET' && ! empty($_SERVER['HTTP_HOST'])) From 6a5e6754819fefa94259c2bad0c9127f61acfe97 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 16:59:51 +0200 Subject: [PATCH 213/228] Add SECURITY.md file --- SECURITY.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 SECURITY.md diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 00000000000..63620cf4bf4 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,12 @@ +# Security Policy + +## Supported Versions + +| Version | Supported | +| -------- | ------------------ | +| >= 9.0.* | :white_check_mark: | + +## Reporting a Vulnerability + +To report a vulnerability, please send an email to security@dolibarr.org +In most cases, after fixing the security, we make an answer by email to say the issue has been fixed. From 1e93d3d7902ecbb662dbc08f5a6b400fd8fc467f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 17:03:11 +0200 Subject: [PATCH 214/228] Prepare v10.0.2 --- htdocs/filefunc.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/filefunc.inc.php b/htdocs/filefunc.inc.php index 85ede0efd39..94455858e8b 100644 --- a/htdocs/filefunc.inc.php +++ b/htdocs/filefunc.inc.php @@ -31,7 +31,7 @@ */ if (! defined('DOL_APPLICATION_TITLE')) define('DOL_APPLICATION_TITLE', 'Dolibarr'); -if (! defined('DOL_VERSION')) define('DOL_VERSION', '10.0.1'); // a.b.c-alpha, a.b.c-beta, a.b.c-rcX or a.b.c +if (! defined('DOL_VERSION')) define('DOL_VERSION', '10.0.2'); // a.b.c-alpha, a.b.c-beta, a.b.c-rcX or a.b.c if (! defined('EURO')) define('EURO', chr(128)); From 48125fd957be6bf8526340b829e297c8d30a35d7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 17:32:58 +0200 Subject: [PATCH 215/228] Fix phpcs --- htdocs/admin/pdf.php | 2 +- htdocs/product/stock/card.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/admin/pdf.php b/htdocs/admin/pdf.php index e2a99441ea8..56c6f977827 100644 --- a/htdocs/admin/pdf.php +++ b/htdocs/admin/pdf.php @@ -283,7 +283,7 @@ if ($action == 'edit') // Edit //Invert sender and recipient print ''.$langs->trans("SwapSenderAndRecipientOnPDF").''; - print $form->selectyesno('MAIN_INVERT_SENDER_RECIPIENT',(! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT))?$conf->global->MAIN_INVERT_SENDER_RECIPIENT:0,1); + print $form->selectyesno('MAIN_INVERT_SENDER_RECIPIENT', (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT))?$conf->global->MAIN_INVERT_SENDER_RECIPIENT:0, 1); print ''; // Place customer adress to the ISO location diff --git a/htdocs/product/stock/card.php b/htdocs/product/stock/card.php index 89d7258e3cc..a9d3e5979ce 100644 --- a/htdocs/product/stock/card.php +++ b/htdocs/product/stock/card.php @@ -74,7 +74,7 @@ if ($id > 0 || ! empty($ref)) { } // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context -$hookmanager->initHooks(array('warehousecard','globalcard')); +$hookmanager->initHooks(array('warehousecard', 'globalcard')); /* * Actions From ee50c41e74d0259e71309eecafa9454eec2eebb8 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 17:32:58 +0200 Subject: [PATCH 216/228] Fix phpcs --- htdocs/admin/pdf.php | 2 +- htdocs/product/stock/card.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/admin/pdf.php b/htdocs/admin/pdf.php index e2a99441ea8..56c6f977827 100644 --- a/htdocs/admin/pdf.php +++ b/htdocs/admin/pdf.php @@ -283,7 +283,7 @@ if ($action == 'edit') // Edit //Invert sender and recipient print ''.$langs->trans("SwapSenderAndRecipientOnPDF").''; - print $form->selectyesno('MAIN_INVERT_SENDER_RECIPIENT',(! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT))?$conf->global->MAIN_INVERT_SENDER_RECIPIENT:0,1); + print $form->selectyesno('MAIN_INVERT_SENDER_RECIPIENT', (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT))?$conf->global->MAIN_INVERT_SENDER_RECIPIENT:0, 1); print ''; // Place customer adress to the ISO location diff --git a/htdocs/product/stock/card.php b/htdocs/product/stock/card.php index ae2150e8464..1c78d6726d3 100644 --- a/htdocs/product/stock/card.php +++ b/htdocs/product/stock/card.php @@ -56,7 +56,7 @@ $backtopage=GETPOST('backtopage', 'alpha'); $result=restrictedArea($user, 'stock'); // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context -$hookmanager->initHooks(array('warehousecard','globalcard')); +$hookmanager->initHooks(array('warehousecard', 'globalcard')); $object = new Entrepot($db); From d51a651ab4811051f6bcfd2317a0f02e3e1b4af3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 17:35:12 +0200 Subject: [PATCH 217/228] Fix phpcs --- htdocs/core/lib/files.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 64d3b414cf8..58e13f37763 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -1910,7 +1910,7 @@ function dol_compress_file($inputfile, $outputfile, $mode = "gz") dol_syslog("Class ZipArchive is set so we zip using ZipArchive to zip into ".$outputfile.' rootPath='.$rootPath); $zip = new ZipArchive; - if ($zip->open($outputfile, ZipArchive::CREATE)!==TRUE) { + if ($zip->open($outputfile, ZipArchive::CREATE) !== true) { $errormsg="Failed to open file ".$outputfile."\n"; dol_syslog("dol_compress_file failure - ".$errormsg, LOG_ERR); return -6; From 898996da4ab4a2109d17f411065e8b75f2f44156 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 21:45:13 +0200 Subject: [PATCH 218/228] =?UTF-8?q?FIX=20vulenrability=20in=20uploading=20?= =?UTF-8?q?file=20found=20by=20=E7=BE=8E=E5=88=9B=E7=A7=91=E6=8A=80?= =?UTF-8?q?=E5=AE=89=E5=85=A8=E5=AE=9E=E9=AA=8C=E5=AE=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/core/lib/files.lib.php | 7 ++++--- htdocs/core/lib/functions.lib.php | 3 ++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 58e13f37763..1012b825254 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -985,6 +985,7 @@ function dolCheckVirus($src_file) * - This function can be used only into a HTML page context. Use dol_move if you are outside. * - Test on antivirus is always done (if antivirus set). * - Database of files is NOT updated (this is done by dol_add_file_process() that calls this function). + * - Extension .noexe may be added if file is executable and MAIN_DOCUMENT_IS_OUTSIDE_WEBROOT_SO_NOEXE_NOT_REQUIRED is not set. * * @param string $src_file Source full path filename ($_FILES['field']['tmp_name']) * @param string $dest_file Target full path filename ($_FILES['field']['name']) @@ -1063,15 +1064,15 @@ function dol_move_uploaded_file($src_file, $dest_file, $allowoverwrite, $disable // Security: // We refuse cache files/dirs, upload using .. and pipes into filenames. - if (preg_match('/^\./', $src_file) || preg_match('/\.\./', $src_file) || preg_match('/[<>|]/', $src_file)) + if (preg_match('/^\./', basename($src_file)) || preg_match('/\.\./', $src_file) || preg_match('/[<>|]/', $src_file)) { dol_syslog("Refused to deliver file ".$src_file, LOG_WARNING); return -1; } // Security: - // On interdit fichiers caches, remontees de repertoire ainsi que les pipe dans les noms de fichiers. - if (preg_match('/^\./', $dest_file) || preg_match('/\.\./', $dest_file) || preg_match('/[<>|]/', $dest_file)) + // We refuse cache files/dirs, upload using .. and pipes into filenames. + if (preg_match('/^\./', basename($dest_file)) || preg_match('/\.\./', $dest_file) || preg_match('/[<>|]/', $dest_file)) { dol_syslog("Refused to deliver file ".$dest_file, LOG_WARNING); return -2; diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index e9f4301f8f2..24a87c15032 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -796,7 +796,8 @@ function dol_size($size, $type = '') */ function dol_sanitizeFileName($str, $newstr = '_', $unaccent = 1) { - $filesystem_forbidden_chars = array('<','>','/','\\','?','*','|','"','°'); + // List of special chars for filenames are defined on page https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file + $filesystem_forbidden_chars = array('<', '>', '/', '\\', '?', '*', '|', '"', ':', '°'); return dol_string_nospecial($unaccent?dol_string_unaccent($str):$str, $newstr, $filesystem_forbidden_chars); } From 019cbc501dade8af4bcd3e0a12f52e690d9ba8ae Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 16 Aug 2019 22:44:02 +0200 Subject: [PATCH 219/228] Report a better error message when db is offline. --- htdocs/master.inc.php | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/htdocs/master.inc.php b/htdocs/master.inc.php index c09a04e8709..fcf68096e6b 100644 --- a/htdocs/master.inc.php +++ b/htdocs/master.inc.php @@ -121,6 +121,25 @@ if (! defined('NOREQUIREDB')) if ($db->error) { + // If we were into a website context + if (! defined('USEDOLIBARREDITOR') && ! defined('USEDOLIBARRSERVER') && ! empty($_SERVER['SCRIPT_FILENAME']) && (strpos($_SERVER['SCRIPT_FILENAME'], DOL_DATA_ROOT.'/website') === 0)) + { + $sapi_type = php_sapi_name(); + if (substr($sapi_type, 0, 3) != 'cgi') http_response_code(503); // To tel search engine this is a temporary error + print '
'; + if (is_object($langs)) + { + $langs->setDefaultLang('auto'); + $langs->load("website"); + print $langs->trans("SorryWebsiteIsCurrentlyOffLine"); + } + else + { + print "SorryWebsiteIsCurrentlyOffLine"; + } + print '
'; + exit; + } dol_print_error($db, "host=".$conf->db->host.", port=".$conf->db->port.", user=".$conf->db->user.", databasename=".$conf->db->name.", ".$db->error); exit; } From 4cea0433b7baa2edf41c3ca4c5bfa04b362105a5 Mon Sep 17 00:00:00 2001 From: andreubisquerra Date: Fri, 16 Aug 2019 23:33:48 +0200 Subject: [PATCH 220/228] If user has not used change control, add total invoice payment --- htdocs/takepos/invoice.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/takepos/invoice.php b/htdocs/takepos/invoice.php index dfa058068ad..17805a6b060 100644 --- a/htdocs/takepos/invoice.php +++ b/htdocs/takepos/invoice.php @@ -175,6 +175,9 @@ if ($action == 'valid' && $user->rights->facture->creer) $payment->datepaye = $now; $payment->fk_account = $bankaccount; $payment->amounts[$invoice->id] = $amountofpayment; + + // If user has not used change control, add total invoice payment + if ($amountofpayment == 0) $payment->amounts[$invoice->id] = $invoice->total_ttc; $payment->paiementid=$paiementid; $payment->num_payment=$invoice->ref; From ae7ba9ff54a71e2eeffb58d7d52bc7c2f31a5d91 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 17 Aug 2019 15:15:52 +0200 Subject: [PATCH 221/228] Doc --- htdocs/core/class/utils.class.php | 2 +- htdocs/core/modules/modSyslog.class.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/class/utils.class.php b/htdocs/core/class/utils.class.php index f86d6570e5c..be220c90487 100644 --- a/htdocs/core/class/utils.class.php +++ b/htdocs/core/class/utils.class.php @@ -802,7 +802,7 @@ class Utils dol_include_once('/core/lib/files.lib.php'); - $nbSaves = ! empty($conf->global->SYSLOG_FILE_SAVES) ? intval($conf->global->SYSLOG_FILE_SAVES) : 14; + $nbSaves = empty($conf->global->SYSLOG_FILE_SAVES) ? 10 : intval($conf->global->SYSLOG_FILE_SAVES); if (empty($conf->global->SYSLOG_FILE)) { $mainlogdir = DOL_DATA_ROOT; diff --git a/htdocs/core/modules/modSyslog.class.php b/htdocs/core/modules/modSyslog.class.php index b754eae2765..164d86522e6 100644 --- a/htdocs/core/modules/modSyslog.class.php +++ b/htdocs/core/modules/modSyslog.class.php @@ -92,7 +92,7 @@ class modSyslog extends DolibarrModules 'objectname' => 'Utils', 'method' => 'compressSyslogs', 'parameters' => '', - 'comment' => 'Compress and archive log files. Warning: batch must be run with same account than your web server to avoid to get log files with different owner than required by web server. Another solution is to set web server Operating System group as the group of directory documents and set GROUP permission "rws" on this directory so log files will always have the group and permissions of the web server Operating System group', + 'comment' => 'Compress and archive log files. The number of versions to keep is defined into the setup of module. Warning: Main application cron script must be run with same account than your web server to avoid to get log files with different owner than required by web server. Another solution is to set web server Operating System group as the group of directory documents and set GROUP permission "rws" on this directory so log files will always have the group and permissions of the web server Operating System group', 'frequency' => 1, 'unitfrequency' => 3600 * 24, 'priority' => 50, From 79f34074f761e4570b16a1a9acb4844d7f2b6ac3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 17 Aug 2019 15:22:26 +0200 Subject: [PATCH 222/228] Fix link to delete job --- htdocs/cron/list.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/cron/list.php b/htdocs/cron/list.php index 7273640e77e..ba868ed7b5d 100644 --- a/htdocs/cron/list.php +++ b/htdocs/cron/list.php @@ -1,7 +1,7 @@ - * Copyright (C) 2013-2016 Laurent Destailleur + * Copyright (C) 2013-2019 Laurent Destailleur * Copyright (C) 2019 Frédéric France * * This program is free software; you can redistribute it and/or modify @@ -553,7 +553,7 @@ if ($num > 0) } if ($user->rights->cron->delete) { - print "rowid."&action=delete".($sortfield?'&sortfield='.$sortfield:'').($sortorder?'&sortorder='.$sortorder:'').$param; + print "rowid."&action=delete".($page?'&page='.$page:'').($sortfield?'&sortfield='.$sortfield:'').($sortorder?'&sortorder='.$sortorder:'').$param; print "\" title=\"".dol_escape_htmltag($langs->trans('CronDelete'))."\">".img_picto($langs->trans('CronDelete'), 'delete')."  "; } else { print "trans('NotEnoughPermissions'))."\">".img_picto($langs->trans('NotEnoughPermissions'), 'delete')."   "; From b99b49c542efefab471b555891423c89f9fd6739 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 17 Aug 2019 17:39:31 +0200 Subject: [PATCH 223/228] Enhance website module --- htdocs/langs/en_US/main.lang | 2 ++ htdocs/website/class/websitepage.class.php | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index 1775ab266bb..528e3ff79aa 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -983,3 +983,5 @@ PaymentInformation=Payment information ValidFrom=Valid from ValidUntil=Valid until NoRecordedUsers=No users +NoArticlesFoundForTheKeyword=No article found for the keyword '%s' +NoArticlesFoundForTheCategory=No article found for the category \ No newline at end of file diff --git a/htdocs/website/class/websitepage.class.php b/htdocs/website/class/websitepage.class.php index 417a1bfc305..23fd1842c89 100644 --- a/htdocs/website/class/websitepage.class.php +++ b/htdocs/website/class/websitepage.class.php @@ -340,7 +340,8 @@ class WebsitePage extends CommonObject return $records; } else { - $this->errors[] = 'Error ' . $this->db->lasterror(); + $this->error = 'Error ' . $this->db->lasterror(); + $this->errors[] = $this->error; dol_syslog(__METHOD__ . ' ' . join(',', $this->errors), LOG_ERR); return -1; From ac1203fce3ec1ac713307b6e7b6e6cd3f30b925e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 17 Aug 2019 18:42:43 +0200 Subject: [PATCH 224/228] Update template --- .../samples/page-sample-dynamiccontent.html | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/htdocs/website/samples/page-sample-dynamiccontent.html b/htdocs/website/samples/page-sample-dynamiccontent.html index c0e217dcc72..b2dd5acaea4 100644 --- a/htdocs/website/samples/page-sample-dynamiccontent.html +++ b/htdocs/website/samples/page-sample-dynamiccontent.html @@ -42,3 +42,57 @@ __(YouCanEditHtmlSource)__ Page created by __WEBSITE_CREATE_BY__
+ + + + +
+This is an example of a section to show the list of latest 5 articles (container with type "blogpost"), that contains the keyword "mykeyword"...
+ +

Latest Blog posts

+
+ loadLangs(array("main")); + $websitepage = new WebsitePage($db); + $fuser = new User($db); + $arrayofblogs = $websitepage->fetchAll($website->id, 'DESC', 'date_creation', 5, 0, array('type_container'=>'blogpost', 'keywords'=>$keyword)); + if (is_numeric($arrayofblogs) && $arrayofblogs < 0) + { + print '
'.$weblangs->trans($websitepage->error).'
'; + } + elseif (is_array($arrayofblogs) && ! empty($arrayofblogs)) + { + foreach($arrayofblogs as $blog) + { + print ''; + } + } + else + { + print '
'; + print '
'; + print $weblangs->trans("NoArticlesFoundForTheKeyword", $keyword); + print '
'; + print '
'; + + } + ?> +
+
\ No newline at end of file From 2147d505c3745161904dcdbf864ab5c6547ad8fe Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 17 Aug 2019 21:44:37 +0200 Subject: [PATCH 225/228] NEW Can restrict API usage to some IP only --- htdocs/api/admin/index.php | 29 ++++++++++++++++++++++++----- htdocs/api/index.php | 15 +++++++++++++++ htdocs/langs/en_US/admin.lang | 1 + 3 files changed, 40 insertions(+), 5 deletions(-) diff --git a/htdocs/api/admin/index.php b/htdocs/api/admin/index.php index ed23151d99b..0ca6786b9b2 100644 --- a/htdocs/api/admin/index.php +++ b/htdocs/api/admin/index.php @@ -78,6 +78,12 @@ if ($action == 'setproductionmode') } } +if ($action == 'save') +{ + dolibarr_set_const($db, 'API_RESTICT_ON_IP', GETPOST('API_RESTICT_ON_IP', 'alpha')); +} + + dol_mkdir(DOL_DATA_ROOT.'/api/temp'); // May have been deleted by a purge @@ -93,37 +99,50 @@ print load_fiche_titre($langs->trans("ApiSetup"), $linkback, 'title_setup'); print $langs->trans("ApiDesc")."
\n"; print "
\n"; -//print ''; +print ''; print ''; +print ''; + print ''; print ''; print ""; -print '"; +print '"; print ""; print ""; -print ''; +print ''; print ''; $production_mode=(empty($conf->global->API_PRODUCTION_MODE)?false:true); if ($production_mode) { - print ''; } else { - print ''; } print ''; print ''; +print ''; +print ''; +print ''; +print ''; +print ''; +print ''; + print '
".$langs->trans("Parameter")."'.$langs->trans("Value")."'.$langs->trans("Value")." 
'.$langs->trans("ApiProductionMode").''; + print ''; print img_picto($langs->trans("Activated"), 'switch_on'); print ''; + print ''; print img_picto($langs->trans("Disabled"), 'switch_off'); print ' 
'.$langs->trans("RestrictApiToIps").''; +print '
'; print '

'; +print ''; + + // Define $urlwithroot $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root)); $urlwithroot=$urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file diff --git a/htdocs/api/index.php b/htdocs/api/index.php index 9d42b9995f6..1f1235571cc 100644 --- a/htdocs/api/index.php +++ b/htdocs/api/index.php @@ -206,6 +206,21 @@ if (! empty($reg[1]) && $reg[1] == 'explorer' && ($reg[2] == '/swagger.json' || // Call one APIs or one definition of an API if (! empty($reg[1]) && ($reg[1] != 'explorer' || ($reg[2] != '/swagger.json' && $reg[2] != '/resources.json' && preg_match('/^\/(swagger|resources)\.json\/(.+)$/', $reg[2], $regbis) && $regbis[2] != 'root'))) { + // Restrict API to some IPs + if (! empty($conf->global->API_RESTICT_ON_IP)) + { + $allowedip=explode(' ', $conf->global->API_RESTICT_ON_IP); + $ipremote = getUserRemoteIP(); + if (! in_array($ipremote, $allowedip)) + { + dol_syslog('Remote ip is '.$ipremote.', not into list '.$conf->global->API_RESTICT_ON_IP); + print 'API not allowed from the IP '.$ipremote; + header('HTTP/1.1 503 API not allowed from your IP '.$ipremote); + //print $conf->global->API_RESTICT_ON_IP; + exit(0); + } + } + $module = $reg[1]; if ($module == 'explorer') // If we call page to explore details of a service { diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index d408cddc5c8..c95c9fe05cc 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1932,3 +1932,4 @@ DeleteEmailCollector=Delete email collector ConfirmDeleteEmailCollector=Are you sure you want to delete this email collector? RecipientEmailsWillBeReplacedWithThisValue=Recipient emails will be always replaced with this value AtLeastOneDefaultBankAccountMandatory=At least 1 default bank account must be defined +RestrictApiToIps=Allow available APIs to some host IP only (wildcard not allowed, use space between values). Empty means every hosts can use the available APIs. \ No newline at end of file From dd6007781a994de93d6338d5de4a63e8ae482d0d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 17 Aug 2019 23:35:05 +0200 Subject: [PATCH 226/228] Update SECURITY.md --- SECURITY.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/SECURITY.md b/SECURITY.md index 63620cf4bf4..a519fdd0fc6 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -4,7 +4,8 @@ | Version | Supported | | -------- | ------------------ | -| >= 9.0.* | :white_check_mark: | +| <= 8.0.* | :redwhite_check_mark: | +| >= 9.0.* | :x: | ## Reporting a Vulnerability From 789de97b4c9ff58db2f39a60e7060147d8b4ff4f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 17 Aug 2019 23:35:27 +0200 Subject: [PATCH 227/228] Update SECURITY.md --- SECURITY.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SECURITY.md b/SECURITY.md index a519fdd0fc6..d1d34f866bb 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -4,8 +4,8 @@ | Version | Supported | | -------- | ------------------ | -| <= 8.0.* | :redwhite_check_mark: | -| >= 9.0.* | :x: | +| <= 8.0.* | :x: | +| >= 9.0.* | :green_check_mark: | ## Reporting a Vulnerability From 334e2759a248711426f078f1b81ba6f45f9406b8 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 17 Aug 2019 23:35:48 +0200 Subject: [PATCH 228/228] Update SECURITY.md --- SECURITY.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SECURITY.md b/SECURITY.md index d1d34f866bb..e5493805733 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -5,7 +5,7 @@ | Version | Supported | | -------- | ------------------ | | <= 8.0.* | :x: | -| >= 9.0.* | :green_check_mark: | +| >= 9.0.* | :white_check_mark: | ## Reporting a Vulnerability

g&Pc;_nO5Rg~To|=dT%3pr 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 TIOLxz$j=xN01&tTGnM}j${hA_ From 983dc80d9ef295462e8da239e48d9782fb09112d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Aug 2019 05:03:45 +0200 Subject: [PATCH 122/228] FIX Disabling a website does not put it offline --- htdocs/core/website.inc.php | 8 ++++++++ htdocs/langs/en_US/website.lang | 1 + 2 files changed, 9 insertions(+) diff --git a/htdocs/core/website.inc.php b/htdocs/core/website.inc.php index 4114fff00b7..44c5d89097a 100644 --- a/htdocs/core/website.inc.php +++ b/htdocs/core/website.inc.php @@ -93,3 +93,11 @@ if ($_SERVER['PHP_SELF'] != DOL_URL_ROOT.'/website/index.php') // If we browsing } } } + +// Show off line message +if (! defined('USEDOLIBARREDITOR') && empty($website->status)) +{ + $weblangs->load("website"); + print '

'); -print "\n".'
'; - +print "\n"; +print ''; print ''; + if ($action == 'createsite') { print ''; @@ -1842,7 +1849,11 @@ if ($action == 'file_manager') } if ($action == 'replacesite') { - print ''; + print ''; +} +if ($action == 'replacesiteconfirm') +{ + print ''; } print ''; } - if (in_array($action, array('editcss','editmenu','file_manager','replacesite'))) + if (in_array($action, array('editcss','editmenu','file_manager','replacesite','replacesiteconfirm'))) { - if (preg_match('/^create/', $action) && $action != 'file_manager' && $action != 'replacesite') print ''; - if (preg_match('/^edit/', $action) && $action != 'file_manager' && $action != 'replacesite') print ''; + if (preg_match('/^create/', $action) && $action != 'file_manager' && $action != 'replacesite' && $action != 'replacesiteconfirm') print ''; + if (preg_match('/^edit/', $action) && $action != 'file_manager' && $action != 'replacesite' && $action != 'replacesiteconfirm') print ''; if ($action != 'preview') print ''; } @@ -2286,7 +2296,7 @@ if (! GETPOST('hide_websitemenu')) // TODO Add js to save alias like we save virtual host name and use dynamic virtual host for url of id=previewpageext } - if (! in_array($action, array('editcss','editmenu','file_manager','replacesite','createsite','createcontainer','createfromclone','createpagefromclone','deletesite'))) + if (! in_array($action, array('editcss','editmenu','file_manager','replacesite','replacesiteconfirm','createsite','createcontainer','createfromclone','createpagefromclone','deletesite'))) { if (preg_match('/^create/', $action)) print ''; if (preg_match('/^edit/', $action)) print ''; @@ -2992,18 +3002,6 @@ if ($action == 'editfile' || $action == 'file_manager') print '